Javascript 当所有按钮都具有相同的值时,如何检查单击了哪个按钮

Javascript 当所有按钮都具有相同的值时,如何检查单击了哪个按钮,javascript,html,jsp,Javascript,Html,Jsp,我尝试根据以下代码创建按钮列表: for(int ii=0;ii<SomeList.size();ii=ii+4) { %> <input type="button" onClick="javascript:void window.open( 'open some page','1440961293929', 'width=100,height=100,toolbar=0,menubar=0,location=0,status=1,

我尝试根据以下代码创建按钮列表:

for(int ii=0;ii<SomeList.size();ii=ii+4)
{
 %>
  <input type="button" 
   onClick="javascript:void window.open(
     'open some page','1440961293929',
     'width=100,height=100,toolbar=0,menubar=0,location=0,status=1,
     scrollbars=1,resizable=1,left=0,top=0'
    );return false;" 
   value="Save" >
<%
}
for(int ii=0;ii

有很多方法可以解决你的问题

  • 最直接的方法是为每个按钮分配唯一的ID
  • 另一种方法是使用
    jQuery
    事件处理程序,如下所示:

    <input type="button" 
      onClick="javascript:void window.open(
      'open some page','1440961293929',
      'width=100,height=100,toolbar=0,menubar=0,location=0,status=1,
      scrollbars=1,resizable=1,left=0,top=0'
     );return false;" 
     value="Save" class="myButton" >
    
    $('.myButton').on('click', function(){
        $(this).addClass("myButtonClicked");
        // Do the desired operations the clicked button
           ....
        // desired operations end
        $(this).removeClass("myButtonClicked");
    });
    
    
    $('.myButton')。在('click',function()上{
    $(this.addClass(“myButtonClicked”);
    //使用单击的按钮执行所需的操作
    ....
    //预期操作结束
    $(this.removeClass(“myButtonClicked”);
    });
    
  • 在这里,我们向组的所有按钮添加一个类,并向该类添加一个事件侦听器。当单击该类的任何按钮时,将触发
    单击
    事件侦听器。然后,我们可以使用函数中的
    this
    变量引用访问单击的按钮

    在任何时间点,
    $('.myButtonClicked')
    将引用上次单击的按钮


    使用JSFIDLE。

    有很多方法可以解决您的问题

  • 最直接的方法是为每个按钮分配唯一的ID
  • 另一种方法是使用
    jQuery
    事件处理程序,如下所示:

    <input type="button" 
      onClick="javascript:void window.open(
      'open some page','1440961293929',
      'width=100,height=100,toolbar=0,menubar=0,location=0,status=1,
      scrollbars=1,resizable=1,left=0,top=0'
     );return false;" 
     value="Save" class="myButton" >
    
    $('.myButton').on('click', function(){
        $(this).addClass("myButtonClicked");
        // Do the desired operations the clicked button
           ....
        // desired operations end
        $(this).removeClass("myButtonClicked");
    });
    
    
    $('.myButton')。在('click',function()上{
    $(this.addClass(“myButtonClicked”);
    //使用单击的按钮执行所需的操作
    ....
    //预期操作结束
    $(this.removeClass(“myButtonClicked”);
    });
    
  • 在这里,我们向组的所有按钮添加一个类,并向该类添加一个事件侦听器。当单击该类的任何按钮时,将触发
    单击
    事件侦听器。然后,我们可以使用函数中的
    this
    变量引用访问单击的按钮

    在任何时间点,
    $('.myButtonClicked')
    将引用上次单击的按钮


    正在使用JSFIDLE。

    您可以使用按钮元素而不是输入元素:

    for(int ii=0;ii<SomeList.size();ii=ii+4)
    {
     %>
     <button name="name" onclick="javascript:void window.open('open some page','1440961293929','width=100,height=100,toolbar=0,menubar=0,location=0,status=1,scrollbars=1,resizable=1,left=0,top=0');return true;" value="button<%=ii%>">Save</button>
    <%
    }
    
    for(int ii=0;ii
    拯救
    
    您可以使用按钮元素而不是输入元素:

    for(int ii=0;ii<SomeList.size();ii=ii+4)
    {
     %>
     <button name="name" onclick="javascript:void window.open('open some page','1440961293929','width=100,height=100,toolbar=0,menubar=0,location=0,status=1,scrollbars=1,resizable=1,left=0,top=0');return true;" value="button<%=ii%>">Save</button>
    <%
    }
    
    for(int ii=0;ii
    拯救
    
    在创建按钮时为所有按钮指定名称和id,并按如下方式处理它们:
    对于(var ii=0;ii
    
    在创建按钮时为所有按钮指定名称和id,并按如下方式处理它们:
    对于(var ii=0;ii
    
    但如果我向每个按钮添加id,例如
    ii
    的值:
    如何获取所单击的按钮的idbutton@adamadamski:
    $('.myButtonClicked')
    将引用该按钮。
    $('.myButtonClicked').attr('id'))
    将返回已单击按钮的id。但如果我向每个按钮添加id,例如
    ii
    的值:
    如何获取已单击按钮的idbutton@adamadamski:
    $('.myButtonClicked')
    将引用该按钮。
    $('.myButtonClicked').attr('id')
    将返回单击按钮的id。