asp:HiddenField的jQuery更新无法在回发之间持续存在
||
我在sitecore(这是一个ascx控件)中有一个子布局,其中包含一个隐藏字段和一个图像映射。根据要单击的图像映射的区域,我要设置隐藏字段的值,然后启动回发到服务器。
我的标记如下:
<script type=\"text/javascript\">
function SetRegion(regionName) {
$(\'#<%=hdnRegion.ClientID%>\').val(regionName);
__doPostBack(\'<%=lnkRedirectButton.UniqueID%>\', \'\');
}
</script>
<img src=\"/Images/Interface/Map-Background.png\" usemap=\"#regionMapView\" class=\"map\" />
<map id=\"regionMapView\" name=\"regionMapView\">
<area id=\"x\" href=\"javascript:SetRegion(\'x\')\" shape=\"poly\" coords=\",,,,\" />
<area id=\"y\" href=\"javascript:SetRegion(\'y\')\" shape=\"poly\" coords=\",,,,\" />
<area id=\"z\" href=\"javascript:SetRegion(\'z\')\" shape=\"poly\" coords=\",,,,\" />
</map>
<asp:HiddenField ID=\"hdnRegion\" runat=\"server\" />
<asp:LinkButton ID=\"lnkRedirectButton\" onclick=\"lnkRedirectButton_Click\" runat=\"server\" />
我的后台代码如下:
protected void lnkRedirectButton_Click(object sender, EventArgs e)
{
string region = hdnRegion.Value; //at this point, I expect hdnRegion.Value to be \"x\" \"y\" or \"z\" but it\'s always coming back empty :-(
//do stuff...
}
我添加了虚拟LinkButton用作回发的钩子(创建用于处理回发的代码隐藏方法)。
我已经在独立的Web应用程序中尝试过此代码,并且看起来工作正常,所以我想知道Sitecore是否发生了某些事情,从而在回发过程中混淆了隐藏字段的值?
澄清;已在服务器上激发并处理回发事件,确定,并且我已经在javascript中使用alert()来确认正确设置了隐藏字段值。
编辑:
重新标记的问题以包含jquery-ui标记。
这个问题似乎与以下事实有关:所有这些都发生在div内部,该div使用jQuery UI库中的$()。dialog()方法显示...
没有找到相关结果
已邀请:
3 个回复
导力疵谜
引用DanaBenson的话:“我相信根本原因是jQueryUI将对话框附加到BODY标记而不是FORM标记,而.Net需要在对话框中。”
勺的驴吓识
敦肌