2013-08-30 44 views
0

我有一個jQuery中的窗體函數的問題。它迫使我雙擊以提交表單。窗體無法雙擊無法工作

<script> 
function pin_login(forma) { 
    jQuery("#form_" + forma).submit(function (e) { 

     var value_pin = jQuery(".pin_" + forma).val(); 
    }); 
} 
</script> 

每次我雙擊它的作品,但它不起作用,當我單擊它,它不提交表單。爲了澄清,我希望它提交一個單一的點擊,而不是一個雙。

+0

你使用'e.preventDefault();'爲什麼? – Itay

+2

你是怎麼調用'pin_login()'的?你能展示HTML的相關部分嗎? – Barmar

回答

0

因爲您致電e.preventDefault()您的表單在第二次或第三次或第n次點擊提交後不應該返回。

如果你想提交你需要返回true而不是像下面的例子那樣調用e.preventDefault()

$("form").submit(function() { 
    if (correct) 
    return true; 
    else { 
    $("#error").text("Not valid!") ; 
    return false; 
    } 
}); 

調用e.preventDefault()或返回false將阻止提交表單到服務器。

現在,由於e.preventDefault()可以阻止表單提交,並且您聲明表單執行了此操作,所以我聲稱您的代碼不會被調用。你能複製粘貼嗎?或者,也許你可以使用jsfiddle ...

+0

我刪除防止默認並繼續需要2點擊發送提交表格 – user2501504

+0

正如我所說 - e.preventDefault()將阻止* always *提交。這意味着如果表單提交,則不會調用您的代碼。您需要調試它,或者,您可以使用jsfiddle並向我們展示不工作的示例。 – Grzegorz