2017-10-17 62 views
-4

这里是我用来收集用户输入并放在输入框下面的表中的jQuery。我不想让用户使用单选按钮和删除名称功能从列表中删除他们的名字。这就是说,计数器还应该在名称被删除时更新。有任何想法吗?从使用单选按钮创建的列表中删除功能?

var counter = 0; 
    var wCounter = 0; 

    $(document).ready(function(){ 
     $("#register").click(function(){ 
      counter++; 

      if(counter === 7){ 
       var warning = "Sorry, but this RoyTalk is completely full!"; 
       alert(warning); 
      } 
      else if(counter > 3){ 
       wCounter++; 
       var name = $("#name").val(); 
       $("#waitList").append('<input type="radio" />'+wCounter+'- '+name+'<br>'); 
      } 
      else { 
       var name = $("#name").val(); 
       $("#regList").append('<input type="radio" />'+counter+'- '+name+'<br>'); 
      } 
     }); 
     $("#remove").click(function(){ 
      //need help here 
     } 
    }); 

这里是我用来让用户输入他们的名字,然后提交的HTML。

<p>Enter your name and click register to reserve your place at the latest RoyTalk!</p> 
<input type="text" id="name" /> 
<span class="regBtn"><button type="btn" id="register">Register!</button></span><button type="btn" id="remove">Remove Name</button> 
<br><br> 
<table class="regTable"> 
    <tr> 
     <th>Registered</th> 
     <th>Waiting List</th> 
    </tr> 
    <tr> 
     <td> 
      <div id="regList"></div> 
     </td> 
     <td> 
      <div id="waitList"></div> 
     </td> 
    </tr> 
</table> 
+3

使用==,计数器== 3单等号是赋值 – Kamal

回答

2

单个=用于赋值,==用于比较。

if(counter == 3){ 
} 
1

错误是if (counter = 3)

=用于分配

使用if (counter == 3)

==用于比较

1

检查,如果条件

if (counter == 3) { 
    // true condition 
} else { 
    // false condition 
} 
1

1)基本赋值运算符等于(=),它将右操作数的值赋给它的左操作数。

2)比较运算符比较它的操作数,并根据比较结果是否为真来返回一个逻辑值。操作数可以是数字,字符串,逻辑或对象值。

Equal(==)如果操作数相等,则返回true。

您应该使用比较来解决您的问题。

if (counter = 3)应该if (counter == 3)

0

其他人已经作出了正确的答案,但我想我会详细说明分配VS条件的位。

计数器= 3设置计数器变量等于3

计数器== 3计数器比较的3

计数器=== 3值将比较计数器的值为3 相同的值类型(在这种情况下,3是一个数字,所以cou这也必须是一个数字)。

看看这个简单的指南,JS比较 - https://www.w3schools.com/js/js_comparisons.asp