나는 두 개의 입력 필드와 값을 가지고있다. 이것은 사용자에게 투영됩니다. 사용자가이 값을 수정하여 제출할 수 있습니다. 제출되면 입력란이 수정되었는지 확인해야합니다.수정 된 입력 필드를 찾는 방법은 무엇입니까?
나는 이전 필드와 현재 필드를 비교하고 확인할 수 있습니다. 하지만이 일을 더 최적화 된 방법을 찾으려고 노력하고 있습니다. 자바 스크립트, PHP, jquery, html 트릭을 사용할 수 있습니다.
나는 두 개의 입력 필드와 값을 가지고있다. 이것은 사용자에게 투영됩니다. 사용자가이 값을 수정하여 제출할 수 있습니다. 제출되면 입력란이 수정되었는지 확인해야합니다.수정 된 입력 필드를 찾는 방법은 무엇입니까?
나는 이전 필드와 현재 필드를 비교하고 확인할 수 있습니다. 하지만이 일을 더 최적화 된 방법을 찾으려고 노력하고 있습니다. 자바 스크립트, PHP, jquery, html 트릭을 사용할 수 있습니다.
<input id="input1" value="someValue" type="text">
<input id="input2" value="someValue" type="text">
스크립트 :
$('input').on('change',function(){
var id = $(this).attr('id');
alert("input field is modified : ID = " + id);
});
대단히 감사합니다. 이것은 내가 찾고 있었던 바로 그 것이다. 다시 한번 감사드립니다. – Jithu
당신은 환영합니다! –
코드를 입력하지 않았으므로 입력 된 내용과 현재 입력 된 내용을 비교할 수 있습니다.
HTML 입력 :
<input type="text" id="testInput" value="DB Value"/>
jQuery를
var modifiedInputs = [];
var oldVal = "";
$("#testInput").focus(function() {
oldVal = this.value;
}).blur(function() {
console.log("Old value: " + oldVal + ". New value: " + this.value);
//If different value, add to array:
if (this.value != oldVal) {
modifiedInputs.push(this.id);
}
});
바이올린 : http://jsfiddle.net/tymeJV/tfmVk/1/
편집 : 툭 그것을 변경 값이 다른 경우, 입력의 변형 예에있어서, 단계, 원래의 경우 요소 ID를 배열에 푸시합니다.
당신은 originalVal
모든 입력을 볼 수 1과 같은 클래스와 숨겨진 2 개의 다른 입력, 하나를 만들 수 있습니다.
그런 다음에 당신이 그런 짓을 제출
$('input').each(function(){
var currentVal = $(this).val();
var originalVal = $(this).closest('.originalVal').val()
if(currentVal != originalVal){
//This input has changed
}
})
하지만 그는 말했다 ... "나는 이전 필드와 현재 필드를 비교하고 검사 할 수 있지만 이것을 최적화하는 방법을 찾으려고 노력하고 있습니다. 자바 스크립트, PHP, jquery 및 html 트릭을 사용할 수 있습니다." – FloatingCoder
글쎄 거기에 '.change' 이벤트를 사용하면 (자), 값을 변경했을 때에 방아쇠를 당기지 만, 이전의 값으로 되돌릴 경우, 입력이 변경되지 않았더라도 변경된 것으로 간주됩니다. 내 의견으로는, 이것은 최적화 된 방법이며 나는이 일을하는 그의 첫 번째 방법이 올바른 것인지 확인합니다 ... –
내가 가장 좋은 건 입력 필드에서 초기 값을 얻을 수있을 것이다라고 한 다음 나중에 그들을 비교할 것입니다. 그런 다음 제출 버튼을 클릭하면 비교를 수행합니다. 예를 들어, $ (document) .ready() 어딘가에이 값을 넣으면 초기 값을 가져옵니다.
var oldValue=[];
$('input').each(function(){
oldValue.push($(this).val());
});
그런 다음 제출을 클릭하면 나중에 비교할 수 있습니다.
당신은 당신이 정확하게 수정에 의해 의미합니까 어떤이
for(var i in formObj)
if('value' in formObj[i] && formObj[i].value!=formObj[i].defaultValue){
//do what ever here ...
}
같은 기본 값과 비교할 수 있을까? 언제부터? 데이터베이스에 저장된 값이나 다른 것과 다른 의미입니까? –
^^^ +1 DB에서 클라이언트 측 변경 또는 데이터 변경을 의미합니까? – ExceptionLimeCat