【发布时间】:2012-06-13 18:50:56
【问题描述】:
好吧,我在学习 VB 的几个小时里一直试图理解这一点:
如果我有这个(PageLoadComplete 函数/HiddenField/linkButton):
Protected Sub PageLoadComplete(sender As Object, e As System.EventArgs) Handles Me.LoadComplete
If Request.QueryString("viewPDF") = 1 Then
MsgBox(myfield.Value)
End If
End Sub
此链接打开一个链接到同一页面的新选项卡(它加载同一页面):
<asp:LinkButton runat="server" CssClass="lnkBtn" ID="btnViewPDF"
OnClientClick="var url = 'CIP_frmCIPEventExplore.aspx?ViewPDF=1;
parent.showNewTab(url, 'CIP Chart - PDF', 'CIP');">
<img alt=""src="External_Files/images/view_pdf_icon.png" />
<span>View MsgBox</span></asp:LinkButton>
和具有值的隐藏字段:
<asp:HiddenField ID="myfield" runat="server" Value="myfields" />
如果我点击链接,它会打开一个带有 MsgBox 的新标签,该标签具有 HiddenField (ID="myfield") 值,这很好,但是:
如果我修改这个隐藏字段并像这样删除它的值:
<asp:HiddenField ID="myfield2" runat="server" />
然后使用javascript添加这个值:
$("#<%=btnViewPDF.ClientID%>").click(function(){
$("#<%=myfield2.ClientID%>").val('this is the field2 val') ; ) ;
});
我得到一个空的 MsgBox() ,那么我怎样才能让 jquery 在调用 PageLoadComplete 函数之前更新这个隐藏字段 ID="myfield2" 谢谢
【问题讨论】:
-
你的
.val声明应该是$("#<%=myfield2.ClientID%>")吗? -
是的,即使这样也没有用
-
抱歉,我误解了您要执行的操作。 PageLoadComplete 在页面呈现给浏览器之前很久就执行了。如果要更新隐藏字段的值,请执行
myfield.Value = "somevalue" -
我要做的是更新 myfield2 以便在使用 javascript 单击链接按钮时可以看到后面的代码;
标签: c# javascript jquery asp.net vb.net