我尝试根据以下代码创建按钮列表:
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" >
<%
}
并检查点击了哪个。通常我可以使用request.getparameter("name")
并获取按钮的值。如果在我的情况下每个按钮具有相同的值(保存),如何获取按钮的名称值(或获取一些id被点击的按钮)?
答案 0 :(得分:0)
您的问题有很多方法。
另一种方法是使用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");
});
这里我们向组的所有按钮添加一个类,并向该类添加一个事件监听器。单击此类的任何按钮时,将触发click
事件侦听器。然后我们可以在函数内部使用this
变量引用访问单击的按钮。
在任何时候,$('.myButtonClicked')
都会引用最后点击的按钮。
使用JSFiddle here。
答案 1 :(得分:0)
您可以使用button元素而不是input元素:
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>
<%
}
这样每个按钮值都会不同,所有按钮标题仍然是“保存”
答案 2 :(得分:0)
give all buttons a name and id while creating them process them like:
for(var ii=0;ii<5;ii+=1)
{
document.write('<input type="button" onClick="javascript:alert(this.name);void(0);" value="Save" id="'+ii+'" name ="button'+ii+'"/>');
}
or
-your code-
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" name="button<%=ii%>" id="button<%=ii%>">
<%
}