doujing5435 2018-03-26 05:38
浏览 98
已采纳

单选按钮检查并取消选中onclick并发送数据

I'm trying to send data onclick via ajax with a radio button. If the radio button is clicked and checked, value of 1 is set in the database. If the radio button is already checked, but clicked to uncheck it, the value of 0 is sent to the database. The code I'm using sends the value onclick and checks the radio button but does not uncheck and hence does not send the value to the database. Please help.

<input type="radio" name="home['. $row["id"].']" id="'. $row["id"].'">

<script>
$(document).ready(function(){
    $('input[type="radio"]').click(function(){

        var checked = $(this).prop('checked');

        if (checked != 'checked') {
            $(this).prop('checked', true);
            var id = $(this).attr('id');
            $.ajax({
                 url:"updateaddress.php",
                 method:"POST",
                 data:{home:"1",id:id,},
            });
        } else if (checked == 'checked') {
            $(this).prop('checked', false);
            var id = $(this).attr('id');
            $.ajax({
                 url:"updateaddress.php",
                 method:"POST",
                 data:{home:"0",id:id,},
        });

        }
    });                           
});
</script>
  • 写回答

3条回答 默认 最新

  • dsgfdgh14569 2018-03-26 05:58
    关注

    A checkbox and

    $('input[type="checkbox"]').on("click", function(){ 
      $.post("updateaddress.php",{home:this.checked,id:this.id});
    }); 
    

    is all you need

    If you MUST use a radio, have a look at this

    How to Check/Uncheck single radio button

    $('input[type="radio"]').on("click", function(){ 
      $.post("updateaddress.php",{home:this.checked,id:this.id});
      this.checked=!this.checked;
    }); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题