2009-07-08 16 views
21

मैं फ़ायरफ़ॉक्स का उपयोग कर रहा हूं और मैं कुछ फ़ोरम पढ़ रहा हूं कि यह दावा करता है कि यह फ़ायरफ़ॉक्स में काम नहीं करता है लेकिन यह पिछले कुछ दिनों से मेरे लिए काम कर रहा है लेकिन काम करना बंद कर दिया है और मैं यह नहीं समझ सकता कि क्यों।document.getElementById ("tweetform")। सबमिट एक समारोह नहीं है?

मैं एक IFrame का उपयोग कर एक एक्सएक्स पोस्ट अनुरोध करता हूं। जब मैं प्रतिक्रिया मिल मैं इस का उपयोग करें:

function startLoad(){ 
    $.get("update.php", function(data){ 
      if(data==''){ 
       startLoad(); 
      } 
      else{ 
       document.getElementById("tweetform").submit(); 
      } 
    }); 
} 

हालांकि, फ़ायरबग से, मैं इस मिल:

document.getElementById("tweetform").submit is not a function 
[Break on this error] document.getElementById("tweetform").submit(); 

मैं मौजूद है प्रस्तुत पता है, लेकिन क्या हो रहा है?

+1

क्या तत्व tweetform मौजूद है? क्या यह एक रूप है? – seth

+0

क्या आप चेतावनी दे सकते हैं (document.getElementById ("tweetform")) और जांचें कि क्या यह एक फॉर्म लौटाता है? – Pradeep

+0

हां, tweetform मौजूद है और वह चेतावनी देता है: [ऑब्जेक्ट HTMLFormElement] – Abs

उत्तर

78

मेरे अनुमान होगा आप के रूप में एक तत्व है कि (संभवतः कहा जाता है "submit" है कि एक <button> या <input type="submit">, और कहा कि ".submit" उस तत्व के लिए एक संदर्भ को पुन: प्राप्त कर रहा है, बजाय सदस्य समारोह "submit()"। यदि यह मामला है, (जैसे, "submit_button")।

+6

अच्छी कॉल। मुझे इससे पहले काटा गया है। – harto

+0

हमारे यहां एक प्रतिभा है! :) आप सही हैं, मेरे पास नाम विशेषता "सबमिट" वाला एक बटन था! लेकिन getElementById का उपयोग क्या है यदि यह उस तत्व का संदर्भ नहीं देता है! : पी – Abs

+0

यह करता है। आपकी समस्या यह है कि 'myForm.submit' एक और तत्व है और कोई फ़ंक्शन नहीं है जो फ़ॉर्म सबमिट करता है। – Quentin

-1

मुझे लगता है कि आप jQuery का उपयोग कर रहे हैं।

इसके बजाए इसे आजमाएं।

$("#tweetform").submit(); 
+1

यह document.getElementById ("tweetform") जैसा ही है, इसलिए यदि यह विफल हो जाता है, तो jQuery समकक्ष चलाने से कोई फर्क नहीं पड़ता है। – ichiban

+0

और फिर भी लोग इसे अभी भी वोट देते हैं। हास्यास्पद। –

+0

अच्छी तरह से .. इस प्रकार की गलती कि लड़के ने अनुशंसा की गई सिंटैक्स का उपयोग करके खुशी नहीं की होगी। –

-4

उपयोग document.forms [ 'tweetform']। submit() के बजाय

कुछ और करने के लिए उस तत्व का नाम बदलने की कोशिश
+4

एक्सेस करना HTMLFormElement एक अलग वस्तु से बचने के लिए 'प्रस्तुत' name = 'form_submit' .. सबमिट विधि को जादुई रूप से काम करना शुरू करने का तरीका नहीं है। – Quentin

4

जेसन Musgrove समझाया अच्छी तरह से जारी करें।

आप एक समस्या को हल करने के लिए HTMLFormElement के एक देशी प्रस्तुत विधि का उपयोग कर सकते हैं:

HTMLFormElement.prototype.submit.call($('#tweetform')[0]); 
0

वास्तव में इसके लिए पर्याप्त अपने < इनपुट नाम = नाम बदलने के लिए "सबमिट करें"/> कुछ और करने के लिए है और यह काम करता है।

संबंधित मुद्दे