मुझे एकाधिक इनपुट के लिए बाध्यकारी मिला है।मैं कैसे बता सकता हूं कि वास्तव में चेकबॉक्स वास्तव में क्लिक किया गया था या नहीं?
$("#foo", "#bar", "#fooCheckbox", "#barCheckBox").bind("change", function() {
// do something here
// do something extra here if $(this) was actually clicked
});
के बाद से वहाँ एक इनपुट, (jQuery के .change() एक के लिए विधि) का एक परिवर्तन की शुरुआत के अन्य तरीके हैं, वहाँ एक रास्ता है, तो एक चेकबॉक्स वास्तव में परिवर्तन घटना पैदा करने के लिए क्लिक किया गया था बताने के लिए है?
मैंने फोकस करने की कोशिश की, हालांकि फोकस ईवेंट चेकबॉक्स के परिवर्तन ईवेंट से पहले आग लग जाता है ताकि यह काम न करे।
$("#foo", "#bar", "#fooCheckbox", "#barCheckBox").bind("change", function() {
// do something here
if($(this).is(":focus")) // do something extra here but focus doesn't happen here for checkboxes.
});
# संपादित करें 1
खेद है कि मैं वास्तव में नहीं जानता कि यह आगे स्पष्ट करने के लिए कैसे ... मुझे परवाह नहीं है अगर चेकबॉक्स चयनित है या नहीं ... मुझे पता है क्या। है (": चेक किया गया") है और इसका उपयोग कैसे करें। यह यहां मदद नहीं करता है। मैं केवल यह जानना चाहता हूं कि परिवर्तन ईवेंट को ट्रिगर करने के लिए चेकबॉक्स वास्तव में क्लिक किया गया था या नहीं।
# संपादित 2
मैं चारों ओर एक काम है ... मैं पहली बार इनपुट और चयन के लिए क्लिक करता है बाँध और तत्व की आईडी की दुकान। फिर मेरे परिवर्तन बाध्यकारी में मैं यह देखने के लिए जांच करता हूं कि क्या तत्व बदल गया है वह वही तत्व है जिसे अंतिम बार क्लिक किया गया था।
$("input, select").click(function() {
var myId = $(this).attr("id");
lastClickedStore.lastClicked = myId;
});
फिर बाध्यकारी में परिवर्तन में मैं जांचता हूं कि वर्तमान आईडी अंतिम क्लिक आईडी के बराबर है या नहीं।
$("#foo", "#bar", "#fooCheckbox", "#barCheckBox").bind("change", function() {
// do something
if(lastClickedStore.lastClicked == $(this).attr("id")) // do something else.
}
शायद $ (this.id) आपको इसकी पहचान करने में मदद करेगा। मेरे संपादित उत्तर की जांच करें। क्षमा करें अगर मैं मंडलियों में जा रहा हूँ। –