2011-12-14 9 views
6

का उपयोग करके पेज लोड पर फ़ॉर्म सबमिशन कैसे ट्रिगर करूं? ऐसा प्रतीत नहीं होता है कि इसे पूरा करना बहुत मुश्किल हो सकता है, लेकिन मैं भीड़ में हूं और मैं एक साधारण उत्तर की तलाश में हूं। मुझे पेज लोड पर एक फॉर्म जमा करने की जरूरत है। यह मेरा AJAX सबमिट फ़ंक्शन है जो ठीक काम करता है। मुझे बस पृष्ठ लोड पर इसे ट्रिगर करने का तरीका पता लगाने की आवश्यकता है।मैं jquery

किसी भी मदद की बहुत सराहना की है!

$("form#seller-agreement-form").submit(function() { 
     // we want to store the values from the form input box, then send via ajax below  
     $.ajax({ 
      type: "POST", 
      url: "http://www2.myurl.com/formhandler", 
      data: "email="+ email + "&status=" + status, 
      success: function(){ 
       $('form#seller-agreement-form').hide(function(){$('div#output').fadeIn();}); 

      } 
     }); 
    return false; 
    }); 

उत्तर

6

में घटना प्रस्तुत करता है, तो आप $().submit() फोन यह कार्रवाई से चलाता है को गति प्रदान करने के लिए; $().submit(function) सबमिट करने के लिए एक हैंडलर बांधता है।

हालांकि आप जमा सबमिट कर सकते हैं और केवल AJAX विधि को सीधे कॉल कर सकते हैं।

$(function() { 
    $.ajax({ 
     type: "POST", 
     url: "http://www2.myurl.com/formhandler", 
     data: "email="+ email + "&status=" + status, 
     success: function(){ 
      $('form#seller-agreement-form').hide(function(){$('div#output').fadeIn();}); 

     } 
    }); 
}); 
0
फार्म पर

कॉल $("#seller-form").submit() और इस प्रस्तुत घटना ट्रिगर किया जाएगा।

0

कर क्यों नहीं

function AjaxCall() { 
    // we want to store the values from the form input box, then send via ajax below  
    $.ajax({ 
     type: "POST", 
     url: "http://www2.myurl.com/formhandler", 
     data: "email=" + email + "&status=" + status, 
     success: function() { 
      $('form#seller-agreement-form').hide(function() { 
       $('div#output').fadeIn(); 
      }); 

     } 
    }); 
    return false; 
} 

AjaxCall(); 

$("form#seller-agreement-form").submit(AjaxCall); 
3

वास्तव में पृष्ठ लोड पर प्रपत्र सबमिट करने के लिए, आप की तरह

$(function() { 
    $('#seller-agreement-form').submit(); 
}); 

लेकिन सिर्फ एक ही प्रदर्शन करने के लिए है कि आप क्या करने की कोशिश कर रहे हैं अगर कुछ लिखते थे जब आप फ़ॉर्म सबमिट करते थे तो अन्यथा किया गया कार्य, तो शायद आप फॉर्म जमा नहीं करना चाहते हैं, लेकिन केवल यह करने के लिए:

function postForm() { 
    $.ajax({ 
     type: "POST", 
     url: "http://www2.myurl.com/formhandler", 
     data: "email="+ email + "&status=" + status, 
     success: function(){ 
      $('form#seller-agreement-form').hide(function(){$('div#output').fadeIn();}); 

     } 
    }); 
} 

$("form#seller-agreement-form").submit(function() { 
    postForm(); 
    return false; 
}); 

$(function() { 
    postForm(); 
}); 
3
$(function() { 
    $("form#seller-agreement-form").submit(function() { 
     // we want to store the values from the form input box, then send via ajax below  
     $.ajax({ 
      type: "POST", 
      url: "http://www2.myurl.com/formhandler", 
      data: "email="+ email + "&status=" + status, 
      success: function(){ 
       $('form#seller-agreement-form').hide(function(){$('div#output').fadeIn();}); 

      } 
     }); 
    return false; 
    }).trigger('submit'); 

}); 

आप फॉर्म पर submit ईवेंट ट्रिगर करने के लिए .trigger() फ़ंक्शन का उपयोग कर सकते हैं। मैंने कॉल जंजीर की है इसलिए फॉर्म को केवल एक बार चुना जाना है। नोट, आप submit ईवेंट ट्रिगर करने से पहले submit ईवेंट हैंडलर सेट करना सुनिश्चित करना चाहते हैं।

प्रलेखन: http://api.jquery.com/trigger

+0

ठीक है क्या पूछ रहे है। यह काम करता है, हालांकि मुझे सबमिशन के अंतहीन पाश में पकड़ा गया प्रतीत होता है। –

+0

@ VaughnD.Taylor उपरोक्त कोड लूप नहीं होना चाहिए, '.trigger()' फ़ंक्शन को 'सबमिट' ईवेंट हैंडलर चलाने के बाद 'submit' ईवेंट ट्रिगर नहीं करता है। तो शायद आपके द्वारा लिखा गया कुछ अन्य कस्टम कोड है जो प्रवाह के साथ गड़बड़ कर रहा है। – Jasper

+0

यह सबसे अधिक संभावना लूपिंग है क्योंकि आप फ़ॉर्म को स्वयं ही पोस्ट कर रहे हैं। आपको .trigger() के आस-पास एक if() ब्लॉक डालना पड़ सकता है, और URL को एक param के साथ टैग करना होगा ताकि वह दोबारा पोस्ट न हो। – rkw

0

उपयोग jQuery trigger() समारोह अपने document.ready घटना

0

यकीन नहीं करता है, तो यह आपके लिए

$(document).ready(function() { 
    $("form#seller-agreement-form").submit(function() { 
     // we want to store the values from the form input box, then send via ajax below  
     $.ajax({ 
      type: "POST", 
      url: "http://www2.myurl.com/formhandler", 
      data: "email="+ email + "&status=" + status, 
      success: function(){ 
       $('form#seller-agreement-form').hide(function(){$('div#output').fadeIn();}); 

      } 
     }); 
    return false; 
    }); 
});