0

我有一个包含许多字段和 2 个提交按钮的表单。我想根据我点击的提交按钮运行不同的检查。我尝试编写下面的代码,但它是错误的(我不知道 JS)并且没有任何反应(语法错误?)。我如何确定点击了两个按钮中的哪一个?

document.getElementById('sub1').onclick = checkForm;
document.getElementById('sub2').onclick = checkForm;

function checkForm(e)
{
    var e = e || window.event;
    var o = e.srcElement || e.originalTarget;

    if(o.id=="sub1")
        return checkNotNull();
    else
        return checkSamePass();
}
4

2 回答 2

1

为什么搞得这么复杂?

function checkForm(button) {

  formOk = false;

  if (button = 'first') {
    //check form
    if (formOk) myform.submit();
  }

  if (button = 'second') {
    //check form using other logic
    if (formOk) myform.submit();
  }

}


<input type="button" onClick="checkForm('first');" value = "button 1">
<input type="button" onClick="checkForm('second');" value = "button 2">
于 2009-09-02T21:59:18.530 回答
1

我将您的代码放入测试页面,它在 FF 和 IE 上都可以正常工作。问题可能在于您正在调用的两个函数checkNotNull()checkSamePass(). 我会检查他们是否正在工作并且是否正常返回。

您可以o.id通过在 if/else 语句中输入alert(o.id).

于 2009-09-02T22:11:34.353 回答