간단하다면 용서해주십시오. - 컴퓨터와 JS에서 한 달 동안 떨어져 있었으므로이 작업은 불가능한 것처럼 보입니다. 그러지 마라.jQuery : '변경'이벤트 핸들러 내에서 특정 버튼을 클릭하면 감지
내가 설명 할 수있는 가장 빠른 방법은 코드를 사용하여 주석을 사용하여 작동 원리를 설명하는 것입니다. 나는이 설명에서 내가 알 수없는 부분을 지적 할 것이다.
나는 편집 할 수 없도록 스타일이 지정된 텍스트 필드가 있으며, 옆에 '편집'버튼이 있습니다.이 버튼을 클릭하면 '저장'버튼으로 바뀌고 텍스트 필드는 편집 가능한 모양이됩니다.
$(".edit_btn").click(function() {
// make the associated text field look editable, and change this 'edit'
// button into a 'save' button. Then place focus on the text in
// in the field.
});
$(".save_btn").click(function() {
// if (value in associated text field has changed from when page loaded)
// submit the form and save this new text
// else
// revert to non-editable mode (hide this 'save' button,
// and show 'edit' button)
});
모두 제대로 작동합니다. 그러나 사용자가 편집 가능한 텍스트 필드를 떠난 경우 필드를 떠나 '저장'버튼을 클릭했는지 또는 페이지의 다른 곳을 클릭했는지 여부를 감지 할 수 있기를 원합니다. 그래서 필드의 'blur'이벤트 처리기 내에서 '저장'버튼을 클릭했는지 알아야합니다. 내 인생 내가 그것을 어떻게 알아낼 수 없습니다 :
$('input[name^="tgfld_"]').blur(function() {
// if (save button has been clicked) <- this is the problem
// don't do anything since the save function will handle this
// else if (value in the field hasn't changed)
// revert everything back to non-editable mode
// else if (value in the field HAS changed)
// do a window.confirm and prompt the user to click the 'save'
// button to save their changes
});
을 저장 버튼이 트리거되는 '흐림'에 대한 이유가 있다면 그래서이 감지 것 - 그게 내가 알아낼 수 없습니다거야.
또는 이것이 완전히 잘못된 상황 처리 방법이라면 알려 주시기 바랍니다.
(I 페이지에서 이러한 필드/버튼 조합의 많은,하지만 지금까지 그 영향을 미치는되지 않은 것도있을 수 있음을 지적한다.)
전혀 도움이 되나요? http://stackoverflow.com/q/6411271/497356 –