使用javascript在条件失败时设置文本框焦点

使用javascript在条件失败时设置文本框焦点,javascript,asp.net,Javascript,Asp.net,在下面的代码中,我有一个textbox和一个包含正则表达式的javascript函数。我可以在textbox中验证正则表达式,它将警告成功或失败。我的目标是,如果失败,它应该关注textbox,并且在成功之前不能移动到另一个控件。 js: 因为您已经在使用onblur事件,所以您只需要使用javascriptfocus()在文本框上设置焦点。我已将您的代码更改为将此(您的控件)传递给javascript函数 将代码隐藏改为 txtField.Attributes.Add("onblur", "j

在下面的代码中,我有一个textbox和一个包含正则表达式的javascript函数。我可以在textbox中验证正则表达式,它将警告成功或失败。我的目标是,如果失败,它应该关注textbox,并且在成功之前不能移动到另一个控件。 js:


因为您已经在使用
onblur
事件,所以您只需要使用javascript
focus()
在文本框上设置焦点。我已将您的代码更改为将此(您的控件)传递给javascript函数

将代码隐藏改为

txtField.Attributes.Add("onblur", "javascript:ValidateRegExp(this, '" + hidRegExp.Value + "');");
以及您的javascript代码

function ValidateRegExp(txtInput, REGEXP) {

        var mySplitResult = new Array();
        mySplitResult = REGEXP.split("~~");

        var iReturn = 0;
        for (i = 0; i < mySplitResult.length - 1; i++) {

            var re = new RegExp(mySplitResult[i]);
            if (!txtInput.value.match(re)) {
                iReturn = iReturn + 1;
            }
        }

        if (iReturn > 0) {
        alert("Failed...");
         txtInput.focus(); //set focus back to control.
           }
        else {
            alert("Success...");

        }

    }
函数ValidateRegExp(txtInput,REGEXP){
var mySplitResult=新数组();
mySplitResult=REGEXP.split(“~~”);
var-iReturn=0;
对于(i=0;i0){
警报(“失败…”);
txtInput.focus();//将焦点设置回控件。
}
否则{
警惕(“成功…”);
}
}
 txtField.Attributes.Add("onblur", "javascript:ValidateRegExp(document.getElementById('" + txtField.ClientID + "').value, '" + hidRegExp.Value + "');");
txtField.Attributes.Add("onblur", "javascript:ValidateRegExp(this, '" + hidRegExp.Value + "');");
function ValidateRegExp(txtInput, REGEXP) {

        var mySplitResult = new Array();
        mySplitResult = REGEXP.split("~~");

        var iReturn = 0;
        for (i = 0; i < mySplitResult.length - 1; i++) {

            var re = new RegExp(mySplitResult[i]);
            if (!txtInput.value.match(re)) {
                iReturn = iReturn + 1;
            }
        }

        if (iReturn > 0) {
        alert("Failed...");
         txtInput.focus(); //set focus back to control.
           }
        else {
            alert("Success...");

        }

    }