JavaScript Onclick无法使用标记

时间:2017-11-03 12:04:35

标签: javascript

HTML:

<div class="loginDiv">
<form class="validate" role="form">
    <div class="form-group float-label-control">
        <input type="text" id="empId" placeholder="Employee ID" required>
    </div>
    <div class="form-group float-label-control">
        <input type="tel" name="mobileNo" maxlength="10" id="mobile" placeholder="Mobile Number" onkeyup="if (/\D/g.test(this.value)) this.value = this.value.replace(/\D/g,'')" required>
    </div>
    <div class="align_center">
        <div class="btn loginBtn" id="regBtn" onclick="new User().register()">REGISTER</div>         
    </div>
</form>

Js档案

var User = function() {    
var self = this;    
self.register = function()     {       
    var mobile = $("#mobile").val();
    var regSeven = /^7[0-9].*$/
    var regEight = /^8[0-9].*$/
    if($("#empId").val() =='')
    {
         alert(Language.InvalidEmployeeId);
         return false;
    }
    if(mobile =='')
    {
         alert(Language.EmptyMobileNumber);
         return false;
    }
}
};

如果我编写点击事件的编码,如下所示,当我使用OnClick时,事件函数不会调用

$("#regBtn").click(function () 
{        
new User().register();   
 })

如何使onclick工作..提前感谢

2 个答案:

答案 0 :(得分:1)

onclick中调用new User().register()的函数。 不要写文字表达式,在函数中包装该表达式并调用该函数。

答案 1 :(得分:0)

尝试使用此代码

$("#regBtn").click(function() {
  var mobile = $("#mobile").val();
  var regSeven = /^7[0-9].*$/;
  var regEight = /^8[0-9].*$/;
  if ($("#empId").val() == '') {
    // alert(Language.InvalidEmployeeId);
    console.log("InvalidEmployeeId");
    return false;
  }
  if (mobile == '') {
    //alert(Language.EmptyMobileNumber);
    console.log("Empty mobile number");
    return false;
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="loginDiv">
  <form class="validate" role="form">
    <div class="form-group float-label-control">
      <input type="text" id="empId" placeholder="Employee ID" required>
    </div>
    <div class="form-group float-label-control">
      <input type="tel" name="mobileNo" maxlength="10" id="mobile" placeholder="Mobile Number" onkeyup="javascript:if (/\D/g.test(this.value)) this.value = this.value.replace(/\D/g,'')" required>
    </div>
    <div class="align_center">
      <div class="btn loginBtn" id="regBtn">REGISTER</div>
    </div>
  </form>
</div>