我想点击按钮点击回来。但无法获得__EVENTTARGET
和__EVENTARGUMENT
。它目前始终为null。我还有其他参赛作品吗?
ASPX
<asp:Button ID="btn" runat="server" OnClientClick="GetDet();" Text="Click"/>
<script type="text/jscript">
function GetDet() {
var obj = $('.output');
var sign = $('.name'); //hidden field
__doPostBack('btn', sign.val());
}
</script>
的.cs
string tar = Convert.ToString(Request.Params.Get("__EVENTTARGET"));
string val = Convert.ToString(Request.Params.Get("__EVENTARGUMENT"));
答案 0 :(得分:3)
ASP.NET
的下一个版本中会发生什么,并且ASP.NET团队肯定不支持这些类型的黑客攻击,换句话说,你的黑客攻击可能会打破ASP.NET
的未来版本...总是努力避免它们。所以,如果你想做一个完整的回发,你绝对不需要javascript ....
<asp:Button ID="btn" runat="server" Text="Click"/>
然后,如果您想发布隐藏字段的值,只需将隐藏字段添加到表单...
<asp:HiddenField ID="hdfName" runat="server" Value="whatever" />
如果你想在回发期间读取隐藏字段的值......
public override void OnLoad(EventArgs args)
{
var name = hdfName.Value;
}
这就是你应该如何以正确的方式使用ASP.NET而不是试图破解它的内在函数