2

我想在回发之前通过 javascript 为 asp.net hiddenfield 分配一个值。

但是在隐藏字段后面的代码中value是null。我正在使用的代码是:

<asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="True" Visible="True">
        <Triggers>
            <asp:AsyncPostBackTrigger   ControlID="save1"    EventName="Click">         
            </asp:AsyncPostBackTrigger>
        </Triggers>
        <ContentTemplate>
            <asp:HiddenField ID="HiddenField1" runat="server" />
       </div>

        </ContentTemplate>
   </asp:UpdatePanel>

 <asp:Button ID="save1" runat="server" Text="Send"  OnClientClick="return SaveFase();"  />

       function SaveFase() {     
           var UP = jQuery.get('<% = HiddenField1.ClientID %>');
           UP.Value= "xxxxxxxxxxxxxxxxxxxx"
          return true             
       }

Protected Sub PassBackImage(sender As Object, e As EventArgs) Handles save1.Click

      dim Value = HiddenField1.Value      
End Sub
4

3 回答 3

2

使用ID 选择器.val()方法:

var UP = jQuery('#<% = HiddenField1.ClientID %>');
UP.val("xxxxxxxxxxxxxxxxxxxx");
于 2012-05-22T15:54:32.823 回答
1

你可能打算写:

$('#<% = HiddenField1.ClientID %>').val('xxxxxxxxxxxxxxxxxxxx');

另外,将您的 javascript 函数放在一个 stipt 块中:

<script type="text/javascript">
       function SaveFase() {     
           return $('#<% = HiddenField1.ClientID %>').val('xxxxxxxxxxxxxxxxxxxx');
       }
<script>
于 2012-05-22T15:50:23.290 回答
0

而不是使用 jQuery.get (这是对 HTTP GET 方法http://api.jquery.com/jQuery.get/的调用),使用

jQuery.find('#' + <% = HiddenField1.ClientID %>)

然后从那里它应该工作。如果没有,请使用错误控制台查看调用时引发的错误(大多数浏览器都内置了一个。

于 2012-05-22T15:56:49.283 回答