web-dev-qa-db-ja.com

ASP.NETページの読み込みが完了した後にJavaScript関数を実行する

ページが完了した後、ASP.NETコードからJavaScript関数を実行する必要があります。

これまでこのコードを使用しましたが、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);
12
Payam Sh

以下のコードを試してください。jQuerydocument.readyページの読み込み後にスクリプトを実行するには:

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

registerClientScriptBlockの代わりにRegisterStartupScriptを使用します。

ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "HandleColors();", true);
4
TouchStarDev

jqueryドキュメントを準備して試してください。

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