我希望有一些Javascript确定在表单中按下了哪个按钮。这是我的代码:
<input type="submit" value="Save">
<button onclick="window.location = 'admin.php'" name="new" type="button">New</button>
<button id="deletebutton" value="30" name="del" type="submit">Delete</button>
这些都提交给一个名为formValidation的Javascript函数,如下所示:
<form name="addorg" action="addorg.php" onSubmit="return formValidation()" enctype="multipart/form-data" method="POST">
我想编写Javascript,找出如何区分按下哪个按钮的区别。
答案 0 :(得分:0)
一种方法是让这些按钮不是提交按钮,给它们所有的点击处理程序,并在它们上面放一个简单的数据属性(可以在点击处理程序中读取):
<input onclick="subForm()" data-type="save" type="button" value="Save">
<button onclick="subForm()" data-type="del" id="deletebutton" value="30" name="del" type="button" >Delete</button>
function subForm(){
var buttonType = this.getAttribute("data-type");
//do somethig with buttonType
document.forms["addorg"].submit();
}
答案 1 :(得分:0)
$(document).ready(function() {
$('button').click(function() {
alert($(this).attr('id'));
})
});
答案 2 :(得分:0)
而不是表单中的onsubmit属性,您可以使用按钮上的onclick事件来调用表单验证功能,并将单击的按钮详细信息传递给它。将以下属性添加到每个提交按钮:
onclick="formValidation(this.value)"
在JS中:
function formValidation(value)
{
//Your code here
}
答案 3 :(得分:0)
<script>
function buttonclick(action)
{
document.addorg.action.value = action;
document.addorg.submit();
}
</script>
<form name="addorg" action="addorg.php" onSubmit="return formValidation()" enctype="multipart/form-data" method="POST">
<input type="hidden" name="action">
<input onclick=buttonclick('savebutton') type="submit" value="Save">
<button onclick=buttonclick('newbutton') name="new" type="button">New</button>
<button onclick=buttonclick('delbutton') id="deletebutton" name="del" type="submit">Delete</button>
</form>