使Javascript读取HTML标记而不是字符串

时间:2016-12-21 14:59:18

标签: javascript html

我编写了一个函数,我传递的函数主要是正则表达式和错误消息。我想要实现的是浏览器将Javascript代码中的HTML代码读取为HTML,而不是字符串。我已经在Stack上阅读了很多帖子,但人们似乎有完全相反的问题。

oneRegex(/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$/, inputValue, 'Password must contain, at least:<br> <ul><li>one number</li> <li>one capital letter</li> <li>one lower case letter</li> <li>8 carachters long</li></ul><br> i.e: passWord3', inputID);

在这种情况下,我喜欢这样的结果:

密码必须至少包含:

  • 一个号码
  • 一个大写字母
  • 一个小写字母
  • 8个carachters长

Javascript函数

function addErr(errMsg, inputID) {
    $('#subButton').prop('disabled', true);
    $('#err' + inputID).fadeIn(500).text(errMsg);
    $('#err' + inputID).css('background-color', '#E3BFC0');
    $('#' + inputID).css('background-color', '#E3BFC0');
}
function removeErr(inputID) {
    $('#subButton').prop('disabled', false);
    $('#err' + inputID).fadeOut(500);
    $('#' + inputID).css('background-color', 'inherit');
}

function oneRegex (regex, inputValue, errMsg, inputID) {
    if (!regex.test(inputValue)) {
        addErr(errMsg, inputID);
    }
    else {
        removeErr(inputID);
    }
}

1 个答案:

答案 0 :(得分:3)

只需将.text替换为.html方法,如下所示:

$('#err' + inputID).fadeIn(500).html(errMsg);