2011-11-30 18 views
18

साथ सबमिट बटन मैं एक इस का उपयोग कर सबमिट बटन पर क्लिक कर रहा हूँ:एक विशिष्ट क्लिक करें JQuery

$('input[type=submit]').click(); 

समस्या मैं और अधिक है कि 1 अपने पन्ने पर सबमिट बटन तो मैं एक विशिष्ट सबमिट बटन लक्षित करने की आवश्यकता है है।

मैं यह कैसे कर सकता हूं?

उत्तर

23

आप हैं, उदाहरण के लिए, यदि आप बटन दे आप इस तरह form-btn की आईडी चाहते हैं submit इनपुट की संख्या जानें और कौन सा (क्रम में) आप click को ट्रिगर करना चाहते हैं, तो आप इसे लक्षित करने के लिए nth-child() वाक्यविन्यास का उपयोग कर सकते हैं। या प्रत्येक को एक आईडी या एक वर्ग जोड़ें जो उन्हें दूसरे से अलग करता है।

उनके सूचकांक द्वारा तत्वों का चयन:

<input type="submit" id="submit_1" /> 
<input type="submit" id="submit_2" /> 
<input type="submit" id="submit_100" /> 

<script> 
$('#submit_100').trigger('click'); 
</script> 

नोट: अपने आईडी द्वारा तत्वों का चयन http://api.jquery.com/eq

:

$('input[type="submit"]:nth-child(1)').trigger('click');//selects the first one 
$('input[type="submit"]:nth-child(2)').trigger('click');//selects the second one 
$('input[type="submit"]:nth-child(100)').trigger('click');//selects the 100th one 

यहां करने के लिए वास्तव में कई तरीके हैं इस सहित का उपयोग कर .eq().click().trigger('click') के लिए छोटा है।

+0

वहाँ ('क्लिक') 'आशुलिपि के ऊपर पूरे अक्षरों में लिखावट' .trigger पसंद करते हैं करने के लिए एक कारण है? – AntonChanning

+1

@ एंटनचैनिंग यह किसी और चीज की तुलना में अधिक पसंद है। शॉर्टेंड फ़ंक्शन रैपर होते हैं, इसलिए उन्हें कॉल करते समय बहुत अधिक मात्रा में ओवरहेड होता है लेकिन मैं कल्पना नहीं कर सकता कि इसका कोई उल्लेखनीय प्रभाव होगा। मुझे यह पसंद है कि '.trigger ('क्लिक') 'फॉर्म अधिक वर्णनात्मक है, क्योंकि मुझे कोड को तुरंत पढ़ने में आसान बनाना आसान है। – Jasper

+0

मुझे लगता है कि यह सिंटैक्स के दृश्य अनुस्मारक के रूप में भी कार्य करता है जिसका उपयोग किसी भी प्रकार की घटना के लिए किया जा सकता है, जिसमें कस्टम इवेंट प्रकार भी शामिल हैं। – AntonChanning

4

प्रत्येक बटन पर id एस जोड़ें और jQuery के साथ id का चयन करें।

या, रूपों id रों है, तो बस प्रपत्र को लक्षित और इतने की तरह जमा करें:

$("#form-id").submit(); 
6

आप एक विशिष्ट आईडी या अपने input के वर्ग की तरह एक मार्कर जोड़ देते हैं तो, आप कर सकते हैं आपके चयनकर्ता अधिक विशिष्ट।

<input type="submit" id="form-btn" /> 

आप इस तरह उसका चयन कर सकते हैं::

$('input[type=submit]#form-btn').click(); 

या बस:

$('#form-btn').click(); 
1

रास्ता पार्टी के लिए देर हो चुकी है, लेकिन अगर आपके प्रस्तुत बटन नाम है:

$("input[name='submitbuttonname']").click(); 
0

हम्म यह इस के साथ एक जादूगर प्रपत्र के साथ काम नहीं कर सकते

$("#renqform").validate().settings.ignore = ":disabled"; 
return $("#renqform").valid(); 
1

एक अन्य सुझाव intacted!

मेरे पास एकाधिक सबमिशन के साथ एक फॉर्म था, जिसमें अलग-अलग मूल्य विशेषताओं भी थे, इसलिए मैंने अपनी अंतर्निहित पुष्टि करने के बाद फॉर्म को सबमिट नहीं किया।

इसके बजाय, मैंने कुछ छिपे हुए बटन जोड़े जिन्हें मैंने अपनी पुष्टि से हां वापस लेने के बाद क्लिक करने के लिए मजबूर किया।

यहाँ बटन होते हैं:

<button id="email" name="email" type="submit" class="submit radius confirmation" value="all"><?php echo $this->__('Email Receipts to Selected'); ?></button> 
<button id="email-french" name="email-french" type="submit" class="submit radius confirmation" value="all"><?php echo $this->__('Email French Receipts to Selected'); ?></button> 
<button id="helper-email" name="email" type="submit" class="submit hide" value="all"></button> 
<button id="helper-email-french" name="email-french" type="submit" class="submit hide" value="all"></button> 

और यहाँ jQuery है:

<script type="text/javascript"> 
jQuery(function ($) { 
    $('[id^=email]').on('click', function (e) { 
     e.preventDefault(); 

     var button = $(this); 

     notify.confirm(<?php echo json_encode($this->__('Are you sure?')); ?>, function (ans) { 
      if (ans) { 
       $('#helper-' + button.attr('id')).click(); 
      } 
     }); 
    }); 
}); 
</script> 
संबंधित मुद्दे