好奇的变化'事件行为

时间:2014-06-24 18:50:22

标签: javascript html5 forms

表单提交按钮之前的最后一个HTML5输入字段是垃圾邮件过滤器,要求用户在将表单提交到单独的页面进行php处理之前解析一个解析为4的简单代数方程式。输入字段(type = number,name = ebot)监视onchange事件,如果检测到则调用函数。当我输入一个无效值并单击“提交”时,表单将传递给php。

然后我按照下面的说明剥离了功能,找出原因。

function chkEvent() {
  var elemValue = document.forms['eFields']['eBot'].value;
  alert(elemValue);
}

现在在输入字段(ebot)中输入任何内容确认了三(3)件事情:

  1. 点击提交已解雇的ebot的onchange事件并停止提交过程
  2. onchange事件称为函数chkEvent
  3. 警告框正确显示用户输入的值
  4. 然后我恢复了chkEvent的原始结构。

    function chkEvent() {
      var elemValue = document.forms['eFields']['eBot'].value;
      if(elemValue <> 4) {
        document.eFields.esubmit.disabled=true;
        alert("Please solve correctly for x.");
      } else {
        document.eFields.esubmit.disabled=false;
      }
    }
    

    现在,无论在垃圾邮件过滤器中输入什么内容,单击提交时表单都会传递给php。 Chrome,Firefox和IE中也会出现相同的行为。我可能已经盯着这个问题太长了但请不要非JavaScript建议。时间限制使我无法学习新语言。

    我经常受益于这个论坛上的巨大技能和专业知识。 Thanx everyone !!

1 个答案:

答案 0 :(得分:0)

<>不是有效的javascript运算符。假设您将!=表示为“不等于”,请使用<>