<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 Web From中,
我在error
:
click btnSaveEducation
[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.]
为什么? 感谢。
答案 0 :(得分:2)
Dy默认你不能在jquery或java-script的下拉列表中添加选项。
因为Asp.net在回发后检查每个控件。
您可以更改页面指令,如下所示
<%@ Page ... EnableEventValidation="false" %>
这将导致服务器端无法验证,这不是好事。
如果您想要实现上述目标,可以使用html drop
向下并使用hidden field
并从hidden field
获取所选值而不是下拉它将起作用。
关于SO的类似问题
答案 1 :(得分:0)
只需将此代码放在您的aspx文件中:
如果您已经拥有类似&lt;%@ Page的内容...... EnableEventValidation =“false”%&gt;