2012-04-27 12 views
2

私はHiddenFieldコントロールを含むページを持っています。私はHiddenFieldの値が変更されたときに実行したい機能を含むページロード時にいくつかのjavascriptを登録します。HiddenFieldの値が変わったときにJavascript関数を使って検索する方法は?

現在、私は、入力フィールドの値が変更された場合、関数を実行し、次のコードを持っている:

$(':input').change(function(){ pageHasBeenUpdated = true; }); 

HiddenFieldコントロールの値が更新された場合にはJavascriptを私はpageHasBeenUpdated = trueを設定する必要があるでしょうか?

+0

のHiddenFieldを更新するだろうか?あなたの質問に対する答えはそれに依存します。 – Bergi

+0

隠しフィールドは、C#コードの背後に更新されます。私はjavascriptコードの行を更新する必要があります(javascriptは$(document).ready()の後に実行されます)$( ':input')。change()はページ上のtextboxフィールドに対して機能し、隠しフィールドでは機能しません。 – Theomax

答えて

2

あなたは属性セレクタでそれを指定することにより、非表示の入力要素にアクセスすることができます:あなたが解雇する必要があります非表示の入力フィールドの値を更新する際changeイベントがトリガされていないので

$('input[type=hidden]') 

入力の値を更新するときにはそれを自分で行います。

例:

Htmlの

<input type="hidden" id="myHiddenInput"> 
<button id="valueChanger">Change hidden input value</button> 

jQueryの

$('input[type=hidden]').change(function(){alert($(this).val())}); 

$('#valueChanger').click(function(){ 
    $('#myHiddenInput').val("Hello World").trigger('change'); 
}); 

Working Example

+0

$( ':input')の ':'は何を意味しますか?あなたが提供したコードが必要ですか? – Theomax

+0

私のコードでは ':'を使用していませんでしたし、不要ではありません。 –

+0

'$( 'input:after')'のような擬似セレクタを使用する場合は、通常コロンが使用されます。私はそれが基本的な要素セレクタの前に機能しているかどうかはわかりません。 –

関連する問題