用Javascript来确定按下了哪个按钮

时间:2012-01-31 17:33:44

标签: javascript html

我希望有一些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,找出如何区分按下哪个按钮的区别。

4 个答案:

答案 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'));
 })
});

Demo

答案 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>