在焦点上运行javascript函数

时间:2014-04-01 18:46:55

标签: javascript jquery html

我有一个javascript函数:

    function testCreditCard () {
    myCardNo = document.getElementById('ccnumber').value;
    myCardType = document.getElementById('ccType').value;
    if (checkCreditCard (myCardNo,myCardType)) {
        alert ("Credit card has a valid format")
    } 
    else {
        alert (ccErrors[ccErrorNo])
        };
    }

和输入字段<input type="text" id="ccnumber" />

并使用onclick函数

触发脚本函数
<button type="post" id="btn_c" name="btn_c" onclick="testCreditCard();" >Click</button>

无论如何我在填充输入字段后可以在焦点输出/右边触发功能吗?

我是javascript / jquery的新手。请为此建议一个解决方案。谢谢你

试过这个

<input type="text" id="ccnumber" />
<script> //Script for testCreditCard </script>
    <script>$("#ccnumber").on("change", testCreditCard);</script>
    <script>
    function testCreditCard () {
      myCardNo = document.getElementById('ccnumber').value;
      myCardType = document.getElementById('ccType').value;
      if (checkCreditCard (myCardNo,myCardType)) {
      } 
      else {alert (ccErrors[ccErrorNo])};
    }
    </script>

</body>

但没有工作。

4 个答案:

答案 0 :(得分:4)

绑定到changeblur事件

$("#ccnumber").on("change", testCreditCard);

答案 1 :(得分:1)

为什么你不尝试调用输入文本的onblur属性?

    <input type="text" onblur="testCreditCard()" id="id" name="id" />

当焦点超出文本时,js功能被激活

我为我的英语道歉

答案 2 :(得分:0)

你可以做到

 <input type="text" id="ccnumber" onblur ="testCreditCard()" />

或尝试

$"#ccnumber").on("blur", function(){
          testCreditCard();
})

答案 3 :(得分:0)

与已发布的答案略有不同的绑定,但同样的想法。

$(document).ready(function() {

$(document).on("blur", "#ccnumber", function() {
       testCreditCard(); 
});

function testCreditCard () {
      myCardNo = document.getElementById('ccnumber').value;
      myCardType = document.getElementById('ccType').value;
      if (checkCreditCard (myCardNo,myCardType)) {
      } 
      else {alert (ccErrors[ccErrorNo])};
}
}

http://jsfiddle.net/9Gphp/