Ruby on Rails, jQuery v1.8.3 및 jQuery UI v1.9.2를 사용하고 있습니다.DOM이 일부 변수를 덮어 쓰는 변경 사항을 처리하는 방법은 무엇입니까?
<%= render :partial => 'template_name', :locals => { :div_id => 'div_id1' } %>
관련 template_name
파일에는 다음이 포함 : 뷰 파일에서 나는 부분 템플릿이 방법으로 렌더링하고 같은 페이지에서
<script type="text/javascript">
var item = $('#<%= div_id %>')
alert(item.selector) // Display #div_id1
</script>
, Ajax 요청을 통해를, 나는 검색 및 추가 DOM에 동일한 부분과 템플릿하지만 :locals => { :div_id => 'div_id2' }
:
<script type="text/javascript">
var item = $('#<%= div_id %>')
alert(item.selector) // Display #div_id2
</script>
번째 이후 상기 메이커 전자 AJAX 요청, 나는 #div_id1
에 대한 참조를 "잃어"은 #div_id2
과 관련이 있기 때문에.
"덮어 쓰기"변수를 피하려면 어떻게해야합니까? 변수를 "격리"(어쩌면 네임 스페이스 또는 일부 jQuery 기능 사용) 할 수 있습니까?
실제 문제는 다음과 같습니다. 글로벌 변수 – apneadiving
을 사용하고 있습니다. 클라이언트 측 JavaScript와 서버 측 출력을 혼합하지 않으려 고합니다. –
@apneadiving - 변수를 로컬 변수로 만들려면 어떻게해야합니까? – user12882