日期:2014-05-16  浏览次数:20401 次

html input输入框元素onblur事件问题
输入框--->     <input type="text" name="" id="deviceserial" onblur="checkseralize()">
还有一个按钮----->  <input type="button" id="btnyes" value="确定" onclick="addyes()">
本来需求是用户输入字符移开鼠标执行onblur事件中的js函数,验证用户输入是否合法,点击按钮执行后台action。
问题:用户可能是输完字符直接点了按钮 导致只执行了输入框的onblur事件,没有执行按钮的addyes方法,用户需要再点击按钮才能执行按钮的click事件。我想让用户只点击一次就能执行onblur验证,而click事件也能执行,这个问题怎么解决????
------解决方案--------------------
onblur是失去焦点事件

function addyes()
{
    if(return checkseralize())
    {执行addyes()代码}
}
function checkseralize()
{
    //验证通过则return true,否则return false
}
------解决方案--------------------
引用:
引用:
onblur是失去焦点事件

function addyes()
{
    if(return checkseralize())
    {执行addyes()代码}
}
function checkseralize()
{
    //验证通过则return true,否则return false
}

我就是这么写的 ……

onclick 其实已经执行了啊,只不过你checkseralize()方法返回了false的话 那addyes()中就没有继续走下去嘛