Jon*_*ood 1 javascript asp.net ajax hiddenfield
我有一些JavaScript设置a的值,HiddenField然后强制回发.我可以跟踪这个JavaScript,它似乎正常工作.但是,当我测试HiddenField页面的Load事件的值时,不再设置它.
在网上搜索,我看到很多关于失去HiddenField价值观的帖子,但是他们似乎都没有像我那样做同样的事情.
这是我的JavaScript函数(已修改):
function EditItemItem(itemId) {
document.getElementById('<%= EditItemId.ClientID %>').value = itemId;
__doPostBack('<%= EditItemUpdatePanel.ClientID %>', '');
}
Run Code Online (Sandbox Code Playgroud)
这是我的标记(修改)的一部分:
<div id="EditItemBox" runat="server">
<asp:HiddenField runat="server" id="EditItemId" />
<asp:UpdatePanel ID="EditItemUpdatePanel" runat="server"
UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="EditItemPanel" runat="server"
CssClass="ModalDialog" style="display:none;">
<div>Edit an Item</div>
<!-- ... -->
</asp:Panel>
</asp:UpdatePanel>
</div>
Run Code Online (Sandbox Code Playgroud)
有没有人有任何想法?
如果runat=server从隐藏字段中删除然后从表格参数中访问它,则会更容易Request.Form["EditItemId"].然后它每次都有效.
您的代码将变为:
function EditItemItem(itemId) {
document.getElementById('EditItemId').value = itemId;
__doPostBack('<%= EditItemUpdatePanel.ClientID %>', '');
}
<div id="EditItemBox" runat="server">
<input type="hidden" id="EditItemId" name="EditItemId" value="" />
<asp:UpdatePanel ID="EditItemUpdatePanel" runat="server"
UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="EditItemPanel" runat="server"
CssClass="ModalDialog" style="display:none;">
<div>Edit an Item</div>
<!-- ... -->
</asp:Panel>
</asp:UpdatePanel>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9959 次 |
| 最近记录: |