选择单选按钮时更改隐藏的输入字段值

时间:2012-06-01 11:52:46

标签: javascript jquery html

每次用户检查单选按钮时,我想更改隐藏输入字段的值。

这就是我的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);
});

有人可以帮忙吗?

亲切的问候,

Steaphann

6 个答案:

答案 0 :(得分: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()(取决于您正在查看的两个函数中的哪一个),但考虑到elthis是对DOM元素的引用,您可以直接使用el.valuethis.value获取其value属性。

答案 1 :(得分:4)

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

答案 2 :(得分:1)

function change(){
   $("ZAAL_NAME").val( $(this).val() ) ;
}

function change(){
   $("ZAAL_NAME").val($("input[type='radio']:checked").val()) ;
}

答案 3 :(得分:1)

尝试 -

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

演示:http://jsfiddle.net/KMXnR/

答案 4 :(得分:1)

使用onclick="change(this.value);",函数就像这样使用

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


}

答案 5 :(得分: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() ); 
 });