我们创建了一个JavaScript函数来验证用户名,它工作正常,但如果我尝试使用这个 函数在同一个jsp页面上的另一个输入验证,它只显示文本,我在同一个函数中包含文本颜色,但它在第二个输入验证中不起作用。 有可能得到吗? 如果有,我怎么能得到? 我是java脚本的初级,请给你答案,谢谢。
例如,这是我的js函数:
function name_validation()
{
if(true){
var unam=document.getElementById("v2").innerHTML="valid";
v2.style.color="green"; //this line is not exist in second input validation
}
else{
var unam=document.getElementById("v2").innerHTML="invalid";
v2.style.color="red"; //this line is not exist in second input validation
}
}
这是我的jsp代码:
name:<input type="text" id="name" onchange="name_validation();"><a id="v2"></a>
Father name:<input type="text" id="name" onchange="name_validation();"><a id="v2"></a>
答案 0 :(得分:2)
您可以像这样传递当前对象
name:<input type="text" id="name" onchange="name_validation(this);">
Father name:<input type="text" id="father_name" onchange="name_validation(this);">
然后去做(JQuery):
function name_validation(obj) {
var value = $(obj).val();
...
}
for javascript
function name_validation(obj) {
var value = obj.value;
...
}
答案 1 :(得分:2)
尝试这种方式希望它有所帮助:
Name:<input type="text" id="name" onchange="name_validation(this.id);">
Father name:<input type="text" id="father_name" onchange="name_validation(this.id);">
function name_validation(id){
if(document.getElementById(id).value == ''){
alert(id + 'is null');
}
}
答案 2 :(得分:0)
尝试以下操作。
Name:<input type="text" id="name" class="validate">
Father name:<input type="text" id="father_name" class="validate">
$(function(){
$('.validate').on('blur',function(){
if($(this).val() == '')
{
$(this).css({'border-color':'red','background':'somecolor '});
}
else{
$(this).css({'background':'somecolor'});
}
});
});