如何在变更事件上交换单选按钮的值?

时间:2012-09-20 07:42:58

标签: php javascript radio-button

我在运行时使用循环创建单选按钮,它将根据循环按升序选择一个单选按钮值,如:

radio button example image

bana首先选择其值为“1” 苹果在第二个选定的值是“2”
橙色是第三个,其选定值为“3”
柠檬是第四个选定的值是“4”

以下是创建单选按钮count=4和变量$var从外循环获取值的代码,此loog第二次运行$var值将为2,依此类推选择上面图片中的pattren显示中的无线电选项

for($i=1;$i<=$count;$i++)
{
$secname=str_replace(" ",'',$data[0]);
if($i==$var)
{
echo("<input type='radio' name='$secname' value='$i' checked='checked'>$i");
}
else
{
echo("<input type='radio' name='$secname' value='$i'>$i");
}
//  echo("<input type='hidden' name='rad[]' value='$i'/>");
}

如何在更改时交换单选按钮值,以便当我选择苹果无线电值“1”时,它会将bana值更改为“2”以交换其值

2 个答案:

答案 0 :(得分:0)

假设&#39; apple&#39;和&#39; bana&#39;代表单选按钮的name属性,你可以使用jQuery完成你想要的东西:

$(document).ready(function(){
   $('input[name="apple"]').change(function(){
      $('input[name="bana"]').each( function(){
         $(this).val( $(this).val() == 1?2:1); // if value is 1, change it to 2, otherwise to 1.
      });
   });
});

答案 1 :(得分:0)

(function () {
    var previous;

    $('input[name="'+ inputGroupName +'"]').focus(function () {
        // Store the current value on focus, before it changes
        previous = this.value;
    }).change(function() {
       // Do something with the previous value after the change
       var currentInput = this;
       var newVal = $(this).value();
       $('input').each(function(i, input) {
          if (input.value === newVal && input !== currentInput) {
            input.value = previous;
          }
    });
}());

类似的东西。