完成ASP.NET页面加载后运行javascript函数

时间:2014-11-29 21:00:52

标签: javascript c# jquery asp.net

我需要在页面完成后从ASP.NET代码运行一个javascript函数。

到目前为止我已经使用过这段代码,但它返回“undefined”,因为当javascript函数被触发时,隐藏字段没有填充值。

我该怎么办?提前完成。

ASPX:

  <asp:HiddenField runat="server" ID="ColorHiddenField" ClientIDMode="Static" Value="0" />

使用Javascript:

    function HandleColors() {
        alert($('#<%= ColorHiddenField.ClientID %>').val());
    }

代码背后:

  ColorHiddenField.Value = item.Color;
  ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "script", "HandleColors();", true);

3 个答案:

答案 0 :(得分:24)

尝试下面的代码,它使用jQuery document.ready在页面加载后运行脚本:

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "script", "$(function () { HandleColors(); });", true);

答案 1 :(得分:4)

使用RegisterStartupScript而不是像

这样的RegisterClientScriptBlock
ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "HandleColors();", true);

答案 2 :(得分:1)

尝试使用jquery文档。

$( document ).ready(function() {
   alert($('#<%= ColorHiddenField.ClientID %>').val());
});