嗨,我正在使用一个功能,我只是看不出有什么问题,请帮忙吗?
这是用于检查输入长度的JavaScript函数。
function checkLength(o, min, max)
{
if ( o.val().length > max || o.val().length < min )
{
$("#uper_length_stud").show()
return false;
}
else
{
return true;
}
}
下面是一个调用它的代码。
$("#signin").click(function(e) {
var name = $("#up_stud_fname").val(), x;
x = checkLength(name, 3, 50);
//other codes follow
}
它在部分o.val()中表示o未定义。虽然我认为它是正确传递的?什么似乎是问题?
Html部分 NAME: 更新
答案 0 :(得分:0)
在checkLength()
你没有通过任何事情。
尝试将所有参数传递给它
答案 1 :(得分:0)
将三个参数传递给函数
这里的函数需要3个参数,而你没有传递它,所以它说未定义
o,min,max
答案 2 :(得分:0)
试试这个 检查这个小提琴http://jsfiddle.net/pratbhoir/9QTYk/
Html代码
<input id='firstName' />
<button id="btn"> Button</button>
JavaScript代码
$("#btn").click(function() {
var name = $('#firstName').val();
x = checkLength(name,1,4);
//other codes follow
});
function checkLength(o, min, max)
{
if ( o.length > max || o.length < min )
{
//$("#uper_length_stud").show()
return false;
}
else
{
return true;
}
}
答案 3 :(得分:0)
您可以从if条件中取出.val()
,因为name
是您传递的字符串:
function checkLength(o, min, max){
if ( o.length > max || o.length < min ){
$("#uper_length_stud").show();
return false;
}
}
我想你不需要其他部分,并确保你的功能在全球范围内。