2014-11-05 3 views
2

날짜가 변경되는 스크립트가 있습니다. 페이지를 새로 고침 할 때 날짜 새로 고침을 방지하려면 어떻게합니까? 내 날짜가 간단한 문자열로 h3에 저장되기 때문에. 미래에는 특정 날짜에 해당하는 데이터를 표시해야합니다. Jquery .change() 메서드는 입력 필드에서만 사용됩니까? 또한 AJAX를 사용하여 저장된 날짜에 해당하는 일부 데이터를 업데이트 할 수 있습니까?변경 사항을 찾는 JQuery 이벤트

데모 : Jsfiddle

<button id="yesterday">yesterday</button> 
<button id="tomorrow">tomorrow</button> 

<h3 id="today_date"></h3> 

답변

1

새로 고침에 변경 날짜를 중지하려면, 당신은 어딘가에 저장해야합니다. 사용자가 최종 날짜를 설정할 때까지 데이터베이스가 아닌 로컬 저장소를 사용하는 것이 가장 좋습니다. 버튼을 클릭 할 때마다 DB에 추가하고 싶지는 않습니다.

로컬 저장소를 사용하면 버튼을 클릭 할 때마다 날짜를 설정하고 페이지로드시 날짜 저장 여부를 확인합니다. 그렇다면 그 날짜를 보여주십시오.

이 펜을보고 어떻게 수행되는지 확인할 수 있습니다 : http://codepen.io/jhealey5/pen/KldjC - 메모를 추가 할 때마다 저장 공간에 추가되고 페이지로드시 저장 장치를 확인한다는 점에서 비슷합니다. 그것을 당신의 요구에 맞출 수 있어야합니다.

그렇다면 Ajax를 사용하여 언제든지 어딘가에 게시 할 수 있습니다. 그러나 정확히 무엇을하려고하는지에 따라 버튼을 클릭 할 때마다이를 수행하는 것은 좋지 않습니다.

희망이 있습니다.

에드 : 당신은 값이 변경되었는지 여부를 확인하기 위해 'DOMSubtreeModified'이벤트를 사용할 수 있습니다 ... codepen 링크

localStorage["notes"] = JSON.stringify(storedNotes) 
0

을 몇 가지 코드를 추가해야합니다.

$("#today_date").on('DOMSubtreeModified', function() { 
     alert("date changed"); 
    }); 

대상 브라우저가 IE 인 경우 'propertychange'이벤트를 사용할 수 있습니다.

$("#today_date").on('DOMSubtreeModified propertychange', function() { 
     alert("date changed"); 
    }); 

http://jsfiddle.net/7LXPq/819/

관련 문제