document.getElementById («tweetform»). submit не является функцией?

Я использую Firefox, и я читал некоторые форумы, утверждая, что это не работает в Firefox, но он работал для меня в течение последних нескольких дней, но перестал работать, и я не могу понять, почему.

Я делаю AXAX POST-запрос, используя IFrame. Когда я получаю ответ, я использую это:

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

Тем не менее, из firebug я получаю это:

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

Я знаю, что существует, но что происходит?

 Nick Lewis09 июл. 2009 г., 00:57
Что показывает alert (document.getElementById (& quot; tweetform & quot;). Submit)?
 Chris Pietschmann09 июл. 2009 г., 02:01
Почему вы используете & quot; document.getElementById & quot; когда вы используете JQuery? Почему бы просто не использовать & quot; $ (& quot; # tweetform & quot;) & quot ;?
 Pradeep09 июл. 2009 г., 00:44
Можете ли вы предупредить (document.getElementById (& quot; tweetform & quot;)) и проверить, возвращает ли он форму?
 Abs09 июл. 2009 г., 00:51
Да, форма tweetform существует, и возвращается это предупреждение: [object HTMLFormElement]
 seth09 июл. 2009 г., 00:41
Элемент tweetform существует? Это форма?

Ответы на вопрос(4)

Jason Musgrove объяснил проблему хорошо.

Вы можете использовать роднойsubmit Метод HTMLFormElement для обхода проблемы:

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

Попробуйте это вместо этого.

$("#tweetform").submit();
 22 апр. 2010 г., 13:53
Я не верю в это & # x2014; но я протестирую, чтобы убедиться, что & # x2014; и я прав. Это не исправит это.
 09 июл. 2009 г., 09:33
хорошо ... такого рода ошибки, которые парень не мог бы использовать, используя синтаксис, который я рекомендовал.
 18 янв. 2011 г., 09:13
-1. Кроме того, не используйте jQuery.submit () вместе с проверкой форм, скажем, делая $ (& quot; tweetform_button & quot;). Click (function () {... // code here; $ (& quot; tweetform & quot;). Submit. ()}); Вы получите бесконечный цикл
 09 июл. 2009 г., 00:51
Это то же самое, что и document.getElementById (& quot; tweetform & quot;), поэтому, если это не удается, запуск эквивалента jQuery не имеет значения.
 09 июл. 2009 г., 04:56
И все же люди все еще голосуют. Смешной.
Решение Вопроса

guess было бы то, что у вас есть элемент в форме, который называется "отправить" (возможно<button> или же<input type="submit">и это ".submit" извлекает ссылку на этот элемент, а не функцию-член "submit ()". Если это так, попробуйте переименовать этот элемент во что-то другое (например, «submit_button»).

 24 апр. 2012 г., 14:24
Я люблю StackOverflow для этого. Вы не можете найти этот ответ в документации. только опыт может дать это вам
 Abs09 июл. 2009 г., 00:57
У нас здесь гений! :) Вы правы, у меня была кнопка с атрибутом имени & quot; submit & quot ;! Но какая польза от getElementById, если он не ссылается на этот элемент! :П
 09 июл. 2009 г., 00:53
Хороший звонок. Я был укушен этим раньше.
 22 апр. 2010 г., 12:31
Оно делает. Ваша проблема в том, чтоmyForm.submit это еще один элемент, а не функция, которая представляет форму.
 18 янв. 2011 г., 09:07
+1 Спасатель !!! Спасибо!

input name = & quot; submit & quot; / & GT; к чему-то еще, и это работает.

Ваш ответ на вопрос