web-dev-qa-db-ja.com

JQuery:非表示の入力フィールドの値を変更する

非表示の入力の値を設定する時間があります。

オプションタグ間から隠しフィールドにHTMLを渡します。それを実行すると、wordpress 'wp_list_dropdowns()のページタイトルが表示されます。テキストを正常に返すようにし、変更イベントでcssを正しく追加しました(非表示フィールドでは明らかに不要ですが、どこで問題が発生しているのかを判断しようとしていました)。非表示の入力をテキスト入力に変更すると機能します。私はSOでこれが可能であることを隠しました(隠された入力の値を変更する))を見ましたが、何かが今私を支えており、答えが見えません。

JSFiddle は次のとおりです。

JavaScript:

$(".selector").change(function() {
    var $value = $(this).val();
    var $title = $(this).children('option[value='+$value+']').html();
    alert($title); 
    $('input#bacon').val($title).css('border','3px solid blue');
});

HTML:

<select class="selector" name="testselect">
    <option value="1">One</option>
    <option value="2">Two</option>
    <option value="3">Three</option>
</select>
</h3>

<input id="bacon" type="hidden" class="bacon" value="" name="testinput">
30
helgatheviking

JQueryコードは完全に機能します。 非表示フィールドは更新中です

20
alex

次のように簡単です:

$('#action').val("1");

#actionは非表示の入力フィールドIDです。

33
Yasir Aslam

働くようです

$(".selector").change(function() {

    var $value = $(this).val();

    var $title = $(this).children('option[value='+$value+']').html();

    $('#bacon').val($title);

});

Firebugで確認してください。また、非表示の入力にcssを配置しないでください。

5
Santosh Linkha

これをDrupalで行い、Form APIを使用してhook_form_alterで#typeをテキストから 'hidden'に変更する場合(たとえば)、出力HTMLが異なる(または省略)DIVラッパー、ID、およびクラス名。

0
Joe Hyde