Javascript 具有相同类但不同ID的if-Else语句中的Jquery Click事件

Javascript 具有相同类但不同ID的if-Else语句中的Jquery Click事件,javascript,jquery,class,if-statement,Javascript,Jquery,Class,If Statement,在我的代码中,有两个按钮具有相同的类和不同的ID。由于这两个按钮需要做类似的事情,特别是来自ajax请求的信息,我首先通过它们的类调用了这两个按钮,并尝试设置一个if-else语句,该语句将根据它们的ID为按钮添加最后的功能。但是,现在第二个按钮的else语句似乎没有运行,当我按下第二个按钮时,我看到第一个按钮应该发生的更改发生了。关于如何使li在else语句中正确显示,有什么建议吗 $(".consumeFood").on("click",function(){ $.ajax({

在我的代码中,有两个按钮具有相同的类和不同的ID。由于这两个按钮需要做类似的事情,特别是来自ajax请求的信息,我首先通过它们的类调用了这两个按钮,并尝试设置一个if-else语句,该语句将根据它们的ID为按钮添加最后的功能。但是,现在第二个按钮的else语句似乎没有运行,当我按下第二个按钮时,我看到第一个按钮应该发生的更改发生了。关于如何使li在else语句中正确显示,有什么建议吗

$(".consumeFood").on("click",function(){
  $.ajax({
    url:url,
},
error:function(err){
},
complete:function(s){
  $.ajax({
    },
    success: function(r){
    if ($(".consumeFood".id=="eat")){
$('#eaten').append("<li class='left'>"+inputInfo+"</li>");
    }
    else if($("#consumeFood".id=="possibleEat")){
      $('#want').append("<li class='right'>"+input+"</li>");

    } 
Html


我仍然试图真正理解你在做什么,也许我还没有理解,但我认为这应该解决你的问题

 $(".consumeFood").on("click",function(){
var buttonId=$(this).attr('id');
      $.ajax({
        url:url,
    },
    error:function(err){
    },
    complete:function(s){
      $.ajax({
        },
        success: function(r){
        if (buttonId=="eat"){
    $('#eaten').append("<li class='left'>"+inputInfo+"</li>");
        }
        else if(buttonId=="possibeEat"){
          $('#want').append("<li class='right'>"+input+"</li>");

        } 

请考虑变量IpPoto信息和输入,我希望它们来自脚本上方的某处,并且它们有一个有效的值。

这2个语句是什么?如果$OutsMouthFoo.Id= =吃{,否则如果$OutMouthId.ID= =可能吃。{你认为它们是正确的吗?。这些行用于标识单个按钮的开始信息。eat是一个按钮,可能是另一个。如果$.consumed.attr'id=='eat',它们不应该是以下方式吗{,否则如果$.consumeFood.attr'id'=='possibleEat',第二种方法是错误的,它们都有相同的类,每次函数都会绑定到这两个按钮。您需要根据从ajax调用收到的响应来决定何时绑定这两个按钮。我的意思是ifresponse.someid='eat'{//然后绑定eat按钮,否则ifresponse.someId=='possibleEat'{//bind the possibleEat button by reformatting to do if$.consumered.attr'id'='eat'允许为第二个按钮创建一个新的li,但它被添加到两个ols中。ajax请求取决于输入。例如,如果我写oreo,提交时ajax会给我有关oreo的信息。请看下面我发布了一个答案我刚刚尝试了这个我的代码和这似乎没有让else if语句仍然运行。是的,inputInfo和Input是变量,定义为输入到与相应按钮相关的字段中的值。可能输入的id中有一个拼写错误。如果可能,请检查这是否是原因,在您的HTML输入按钮id中,我是说到这里,啊,是的。这就解决了。非常感谢。你帮了大忙。没问题。很高兴它帮了你,一定要选择正确的答案,这样其他有同样问题的人也能从中受益。
 $(".consumeFood").on("click",function(){
var buttonId=$(this).attr('id');
      $.ajax({
        url:url,
    },
    error:function(err){
    },
    complete:function(s){
      $.ajax({
        },
        success: function(r){
        if (buttonId=="eat"){
    $('#eaten').append("<li class='left'>"+inputInfo+"</li>");
        }
        else if(buttonId=="possibeEat"){
          $('#want').append("<li class='right'>"+input+"</li>");

        }