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()or $(this).val()(取决于您正在查看的两个函数中的哪一个),但是鉴于elandthis是对 DOM 元素的引用,您可以直接使用el.valueor获取其 value 属性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

尝试 -

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

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

于 2012-06-01T11:58:50.283 回答
1

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

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


}
于 2012-06-01T12:04:26.067 回答
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 回答