2

ユーザーがラジオボタンをチェックするたびに、非表示の入力フィールドの値を変更したいと考えています。

これは私のHTMLがどのように見えるかです。

<input type="hidden" id="ZAAL_NAME" value="" name="ZAAL_NAME" />

<input type="radio" name="zaal_ID" value="ROOM1" onclick="change">
<input type="radio" name="zaal_ID" value="ROOM2" onclick="change"> 
<input type="radio" name="zaal_ID" value="ROOM3" onclick="change">

ここで、ラジオ ボタンをチェックするたびに、そのラジオ ボタンの値が非表示の入力フィールドの値にもなるようにしたいと考えています。誰もそれを行う方法を知っていますか? これが私がこれまでに持っているものです。

   $('input[name="radbut"]').click(function() {
    console.log(this.value);
    $('ZAAL_NAME').val(this.value);
});

誰でも助けてくれますか?

敬具、

ステファン

4

6 に答える 6

6

onclick括弧が含まれていないため、インラインハンドラーは機能しませんonclick="change()"。実際に関数を呼び出す必要があります。onclick="change(this);"ただし、クリックしたボタンへの参照を関数に渡すには、次のように変更する必要があります。

function change(el){
    $("#ZAAL_NAME").val(el.value) ;
}

また、jQuery セレクターには、ID で選択する # が必要です。

ただし、マークアップからインラインを削除して、次のようにすることをonclickお勧めします。

$('input[name="zaal_ID"]').click(function() {
    $('#ZAAL_NAME').val(this.value);
});

後者は、ドキュメント対応ハンドラーおよび/またはページ ソースのラジオ ボタンの後に表示されるスクリプト ブロックにある必要があります。

注: クリックされた要素の値を取得するときは、$(el).val()または$(this).val()(2 つの関数のどちらを見ているかに応じて) と言うことができますが、elthisが DOM 要素への参照であることを考えると、 el.valueorを使用してその値のプロパティを直接取得できますthis.value

于 2012-06-01T11:59:22.710 に答える
4
$('input[name="zaal_ID"]').change(function(){
   $('#ZAAL_NAME').val( this.value );
})
于 2012-06-01T11:57:02.640 に答える
1
function change(){
   $("ZAAL_NAME").val( $(this).val() ) ;
}

また

function change(){
   $("ZAAL_NAME").val($("input[type='radio']:checked").val()) ;
}
于 2012-06-01T11:56:26.860 に答える
1

useonclick="change(this.value);"と function use はこのように

function change(e){
    $("ZAAL_NAME").val(e) ;


}
于 2012-06-01T12:04:26.067 に答える
1

試す -

$(':radio').change(function(){
   $('#ZAAL_NAME').val($(this).val());
})

デモ: http://jsfiddle.net/KMXnR/

于 2012-06-01T11:58:50.283 に答える
0

使用できるのは

$("input:radio[name=ZAAL_NAME]").click(function() {
     var value =  $(this).val(); 
     // or $('input:radio[name=theme]:checked').val(); 
     $("#ZAAL_NAME").val(value); 
 });

要するに

$("input:radio[name=ZAAL_NAME]").click(function() {
     $("#ZAAL_NAME").val( $(this).val() ); 
 });
于 2012-06-01T11:56:12.443 に答える