2014-03-26 86 views
0
<script type="text/javascript"> 
    var s = false; 
    $(document).ready(function() { 
     $("#btnSaveEducation").click(function() { 
      s = true; 
     }); 

     window.onload = function() { 

      if (s == false) { 
       var select = document.getElementById("year"); 
       for (var i = 2011; i >= 1900; --i) { 
        var option = document.createElement('option'); 
        option.text = option.value = i; 
        select.add(option, 0); 
       } 
      } 
     }; 
    }); 
</script> 

.... 
... 
<body> 
<asp:DropDownList ID="year" runat="server" name="year"> 
         </asp:DropDownList> 
</body> 
.... 
.. 

你好。 在Asp.Net捲筒紙, 我得到這個error當我click btnSaveEducationAsp.net Web窗體錯誤:回發或回調參數無效

[Invalid postback or callback argument. Event validation is enabled using 
<pages enableEventValidation="true"/> in configuration or 
<%@ Page EnableEventValidation="true" %> in a page. 
For security purposes, this feature verifies that arguments to postback 
or callback events originate from the server control that originally 
rendered them. If the data is valid and expected, use the 
ClientScriptManager.RegisterForEventValidation method in order to 
register the postback or callback data for validation.] 

爲什麼? 謝謝。

回答

2

Dy默認你不能在jquery或java-script的下拉列表中添加選項。

因爲Asp.net在回發後檢查每個控件。

您可以更改頁面指令如下

<%@ Page ... EnableEventValidation="false" %> 

,這將導致在服務器端這是不好的事情沒有驗證。

如果你想實現上述,你可以使用html drop下來,並使用hidden field並從hidden field獲得選定的值,而不是下拉它將工作。在SO

  1. asp.net: Invalid postback or callback argument
+0

當我點擊F5在Visual Studio中,一切都很好。在下拉列表中有幾年。當我刷新頁面時,一切都很好。 但是,當我點擊按鈕,我得到這個錯誤。 – Jeyhun

+0

我已經完成了。已經沒有錯誤。但是你怎麼看?是否可以引起其他proplem爲其他元素添加「EnableEventValidation =」false「屬性? – Jeyhun

+0

@Shekhar Asp.net檢查每個控件後回發....它是什麼意思..? –

0

類似的問題,只是把這個代碼在你的aspx文件:

如果你已經有類似<%@頁... EnableEventValidation =「false」%>

相關問題