1

我对 jQuery 中的 if 条件有点困惑。我想将“if”条件放入 jQuery 函数中。这是正确的方法吗?还是比这更好的解决方案?

我想把这个方法放到下面的 jQuery 函数中——我怎样才能实现它?

if($(this).attr("id")=='emptys'){
    data = { msg : datas } //this is element inside of ajax
}
else{
    data = { pid : datas } //this is element inside of ajax
}

我想把这个方法放在下面的函数中

<script>
$(document).ready(function(){

  $('.but').click(function(){
    var datas = $(this).attr("id");
     $.ajax({

        type: 'GET',
        url:"addcart.php",
        data : { pid : datas },
        success:function(result){
      $("#div1").html(result);

    }});
  });
});
</script>
4

3 回答 3

3

尝试

$(document).ready(function () {
    $('.but').click(function () {
        var data;
        if (this.id == 'empty') {
            data = {
                msg: datas
            }
        } else {
            data = {
                pid: datas
            }
        }

        $.ajax({
            type: 'GET',
            url: "addcart.php",
            data: data,
            success: function (result) {
                $("#div1").html(result);
            }
        });
    });
});

或者更好的

$(document).ready(function () {
    $('.but').click(function () {
        var data = {};
        data[this.id == 'empty' ? 'msg' : 'pid'] = this.id

        $.ajax({
            type: 'GET',
            url: "addcart.php",
            data: data,
            success: function (result) {
                $("#div1").html(result);
            }
        });
    });
});
于 2013-10-16T05:53:21.283 回答
1
<script>
$(document).ready(function(){

  $('.but').click(function(){

      var datas = $(this).attr("id");
var tempdata;

  if(datas ==''){// if empty then check by ""
    tempdata= { msg : datas } //this is element inside of ajax
  }
  else{
    tempdata= { pid : datas } //this is element inside of ajax
  }

    $.ajax({

        type: 'GET',
        url:"addcart.php",
        data : tempdata,
        success:function(result){
      $("#div1").html(result);

    }});

  });

});

</script>
于 2013-10-16T05:53:19.967 回答
0
<script>
$(document).ready(function(){

  $('.but').click(function(){

      var datas = $(this).attr("id");

if(datas =='empty'){
    data : { msg : datas } //this is element inside of ajax
}
else{
    data : { pid : datas } //this is element inside of ajax
}


    $.ajax({

        type: 'GET',
        url:"addcart.php",
        data : data,
        success:function(result){
      $("#div1").html(result);

    }});

  });

});

</script>
于 2013-10-16T05:53:59.270 回答