나는 다음 코드에 의문을 가지고 있습니다. 누군가가 자바 스크립트가 값 p에 액세스하지 못한다고 내가 잘못하고 있다고 말할 수 있습니까? 감사 !보기에서 자바 스크립트 (JQuery)로 RoR 값 전달하기
<% p=progress_for(contest_score) %> # p is non-zero
<script type="text/javascript">
$(function(){
$('#contest_progressbar').progressbar({value: <%=p%>});
<!--value p becomes 0 when rendered by jquery-->
$("#contest_progressbar").css({ 'background': 'LightYellow' });
$("#contest_progressbar > div").css({ 'background': 'Orange' });
$('#contest_progressbar span.text').text(<%=p%>+'%')
<!--value p becomes 0 when rendered by jquery-->
});
</script>
progress: <%=p%> progress bar should be below: # p is the correct value here
<div id='contest_progressbar' style="margin-left:20px; height: 20px;">
<span class="text"></span>
</div>
편집 : 대신 직선 스크립트 태그를 사용하십시오. 그래도 같은 문제가 발생합니다. EDIT2 : JQuery 문제인 것 같습니다. Bryan의 답변에 대한 설명에서 html을 참조하십시오.
이론적으로 볼 때 나는 정상적으로 작동해야합니다. 브라우저에서 "소스보기"를 할 때 실제로 HTML 출력에서 프로세스 막대 ({value : 0})로 인쇄되고 있습니까? – ghayes
자바 스크립트 줄 끝의 루비 주석이 여기에 추가 된 내용이라고 가정합니다. 그렇습니까? – jaydel
또한 고정 값 (가장 좋은 '<%= text %>')과 스타일 정보 (CSS 파일에서 가장 좋음)에 JavaScript를 사용하는 특별한 이유가 있습니까? – brymck