2011-09-21 34 views
5

我有一個ASP.NET按鈕,有時不會回發。我在IE Developer檢查這一點,並發現,當按鈕不起作用options.clientSubmit設置爲false在功能WebForm_DoPostBackWithOptions()ASP.NET按鈕options.clientSubmit設置爲false

我的按鈕代碼

<asp:Button 
      runat="server" 
      ID="btnSubmit" 
      CssClass="button" 
      OnClick="btnSubmit_Click" 
      meta:resourcekey="btnSubmitResource1" /> 

WebForm_DoPostBackWithOptions(options)

if (options.clientSubmit) { 
    __doPostBack(options.eventTarget, options.eventArgument); 
    } 

誰能告訴我爲什麼按鈕有時工作,有時不工作?我應該怎麼做才能使它始終工作?

+3

那裏有問題嗎?我看不到一個。 – Lazarus

+0

我做了一些修改,你現在能看到這個問題嗎? –

+0

我有一個類似的問題,但我使用OnClientClick。在生成的代碼中,clientSubmit選項被硬編碼爲false:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(「enroll1 $ btnSubmitCC」,「」,true,「」,「」,false,false)); – xr280xr

回答

2

嘗試添加CausesValidation =「False」,看看會發生什麼。我懷疑你有一些未通過驗證。

+0

謝謝,但我已經試過它,它沒有工作:( –

1

你沒有使用任何東西來防止重複提交表單?

我有完全一樣的問題是,.NET驗證方法表明,形式是有效的,但options.clientSubmit總是假的:S

的罪魁禍首竟然是:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.prevDblSubmit').preventDoubleSubmit(); 
    }) 
</script> 
3

這可能是一種可能性:

檢查您是否有任何Validators在頁面上沒有被分組到任何ValidationGroup,並可能是可見的錯誤(可能是由於容器是可見的錯誤)。該驗證器可能會驗證在這種情況下不相關的控件,並導致回發取消,表示它無效。

如果您發現任何問題,請將所有相關控件分組,然後將ValidationGroup分配給所有對應的Validators,然後將該組分配給您的提交控件(以導致回發爲準)。這是我見過的最常見的錯誤..