2013-10-23 97 views
0

就像標題所示。如果表單上的其他變量/條件有效,那麼在頁面上有一些應該觸發__doPostBack調用的JavaScript。__doPostBack不會在第一次點擊時觸發

function DoPostBack() { 
    var valid = true; 
    if (SomethingHappens) { 
     valid = false 
    } 

    alert("Is_Valid? " + valid) //evaluates to true 
    if (valid) { 
     __doPostBack("btnSubmit",''); //First click here does nothing, despite it being it by code. Works fine the second time. 
    } 

,這是迷上了一個按鈕,如下所示:

<input ID="btnSubmit" runat="server" onclick="DoPostBack();" type="button" value="Submit" style="width:80px"/> 

是什麼原因造成的提交按鈕的第一次點擊被忽略?我已經確認這是我在page_load事件中放置斷點的行爲。第一次調用__doPostBack時,斷點不會被命中,第二次會被命中。

+0

你的警報(Is_Valid ...)是任務引用,除此之外,我認爲你的代碼沒有問題。我試了一下,它在這裏工作,看看我的代碼在[nomorepasting.com](http://www.nomorepasting.com/getpaste.php?pasteid=39640) – atomman

+0

考慮而不是'__doPostBack(「btnSubmit」, '');'使用'document.getElementById(「btnSubmit」)。click();'。另外,你是否在函數DoPostBack()的末尾執行'return false'來防止默認動作?而拼寫「功能」大寫字母「F」是一個錯字,或者你是否有這樣的代碼? –

回答

0

如果你說的是正確的,你的函數應該被執行,因爲它不是,那麼至少你所說的東西是不正確的。

相關問題