/ / टेबल में दो बार फायरिंग की घटना - jquery

एक टेबल में दो बार फायरिंग कार्यक्रम - jquery

जब भी कोई इनपुट परिवर्तन होता है, तो मैं अभिभावक क्लिक ईवेंट की कोशिश कर रहा हूं। नीचे मेरा कोड है, यह दो बार के लिए क्लिक ईवेंट को फायर कर रहा है।

                  $("TABLE TBODY TR TD INPUT").change(function()
{
$(this).parents("TD").click();
});
$("TABLE TBODY TR TD").click(function()
{
alert("Clicked me...");
});

यहाँ मेरा HTML Code है

      <table>
<tr><td>foo<input type="radio"></td><td>foo<input type="checkbox"></td></tr>
<tr><td>foo<input type="radio"></td><td>foo<input type="checkbox"></td></tr>
<tr><td>foo<input type="radio"></td><td>foo<input type="checkbox"></td></tr>
</table>

कहां गलती हुई है ...

उत्तर:

उत्तर № 1 के लिए 1
$("TABLE TBODY TR TD INPUT").change(function() {
clicky(this.parents("TD"));
});
$("TABLE TBODY TR TD").click(function clicky(parentElement) {
alert("Clicked me...");
});

ऐसा input में भी है td इसलिए दोनों पर क्लिक किया जा रहा है। यह केवल एक चेतावनी देता है, लेकिन मुझे लगता है कि आप सतर्क नहीं होना चाहते, बल्कि मूल तत्व को बदलना चाहते हैं।

लेकिन मुझे यकीन है आप शायद निम्नलिखित चाहते हैं

$("TABLE TBODY TR TD INPUT").change(function() {
clicky($(this).parents("TD"));
});

function clicky(parentElement) {
$(parentElement).toggleClass("clicked");

};

लाइव उदाहरण: http://jsfiddle.net/nFtzJ/

यहाँ हर बार इनपुट बदलता है, जनक <td> वर्ग है। बेशक टॉगल किया जाता है, बेशक इसे बदला जा सकता है, लेकिन इसका उपयोग करने के लिए लगभग एक नकली पेस है alert(); उत्पादन में।


उत्तर № 2 के लिए 1

कुछ ऐसा प्रयास करें। इस

$("TABLE TBODY TR TD INPUT").change(function() {
alert("Clicked me...");
});