我有一堆具有相同名称但价值不同的按钮。这些按钮需要从一个值更改为另一个值,并在单击时返回。我知道我可以使用html和javascript来完成它,但我想用尽可能少的代码来做。我有13个按钮,我不想调用13个不同的onclick
功能。我希望使用带有元素ID的case语句,但我不知道我从哪里开始。我会发布我的代码,但它很简单,我怀疑它是否需要。
以下是我的按钮代码的示例:
<tr>
<td>
<input type="button" value="test1" name="Online">
</td>
<td>
<input type="button" value="test2" name="Online">
</td>
</tr>
答案 0 :(得分:1)
由于您的按钮具有相同的名称,因此您无法使用默认的OnClick事件(在本例中为Online_OnClick
)。如果您尝试,只有 last 按钮才会触发该事件。但您可以使用onclick
属性指定要调用的函数。例如:
<input type="button" value="test1" name="Online" onclick="DoButtonClick('test1')">
<input type="button" value="test2" name="Online" onclick="DoButtonClick('test2')">
<script language="vbscript">
Sub DoButtonClick(strButtonValue)
' Do what you wish
End Sub
</script>
答案 1 :(得分:1)
如果您不需要在服务器端执行任何操作,则可以使用javascript执行此操作。我已经发布了一个如何执行此操作的示例here。
首先,只需添加一个onclick
事件,将当前元素传递给函数,例如clicked()
。
<tr>
<td>
<input onclick="clicked(this)" type="button" value="test1" name="Online">
</td>
<td>
<input onclick="clicked(this)" type="button" value="test2" name="Online">
</td>
</tr>
以下是javascript clicked()
函数的外观
function clicked(elem) {
if (elem.name === 'Online') {
elem.name = 'Offline';
// do other stuff
} else {
elem.name = 'Online';
// do other stuff
}
}