我在让我的 javascript 函数正常工作时遇到问题。发生的情况是它验证表单字段,如果不正确,将通过单独的 div 显示错误。
JavaScript:
function validatestr(id,max,min) {
var maximum = parseInt(max);
var minmum = parseInt(min);
var div = document.getElementById(id+'_error');
var x = document.getElementById(id);
div.innerHTML = '';
if (x.value == null || x.value == '') {
div.innerHTML = 'Value must not be null!';
}
if (x.length > maximum || x.length < minimum) {
div.innerHTML = 'Value must be between '+minimum+' and '+maximum+' chars!';
}
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<input type="text" class="textbox" id="varchar" name="varchar" onblur="validatestr('varchar',100,10)">
<div style="display:inline;color:#ff0000;font-weight:bold" id="varchar_error"></div>
Run Code Online (Sandbox Code Playgroud)
所发生的情况是,检查该值是否为 null 可以按预期工作,但检查该值的长度却无法正常工作。当我测试这个时发生的情况是字符串长度似乎是undefined …