使用jQuery比较输入值
我有一个有3个输入文件字段的表单。我想确保他们不会两次上传同一个文档。现在我的代码如下:使用jQuery比较输入值,jquery,comparison,each,Jquery,Comparison,Each,我有一个有3个输入文件字段的表单。我想确保他们不会两次上传同一个文档。现在我的代码如下: $(':input.File').each(function() { if ($(this).val() == T) { $this.after('<br/><span class="error">Duplicate</span>'); } }) $(':input.File')。每个(函数(){ if($(this).val()==T)
$(':input.File').each(function() {
if ($(this).val() == T) {
$this.after('<br/><span class="error">Duplicate</span>');
}
})
$(':input.File')。每个(函数(){
if($(this).val()==T){
$this.after(“
Duplicate”);
}
})
代码可以工作,但我的问题是它总是抛出错误,因为它是在与自身进行比较。当我希望它比较除自身以外的所有文件字段时,它标识所有文件字段
是否有方法排除要比较的字段?基本上,我想检查除
$(this)
字段之外的所有文件字段值。我感觉这就是您要查找的:
为了给你一个更具体的答案,我需要更多的代码上下文。(即,T是什么,代码是如何到达的,等等)我感觉这就是您要寻找的:
为了给你一个更具体的答案,我需要更多的代码上下文。(即,T是什么,代码是如何到达的,等等)创建一个空数组,然后遍历每个字段,检查该字段是否在数组中,如果没有,则添加它
var arr = [];
$(':input.File').each(function(){
if(arr.indexOf($(this).val()) > -1){
$(this).after("<br/><span class='error'>Duplicate</span> ");
}else{
arr.push($(this).val());
}
})
var arr=[];
$(':input.File')。每个(函数(){
if(arr.indexOf($(this.val())>-1){
$(此)。之后(“
重复”);
}否则{
arr.push($(this.val());
}
})
创建一个空数组,然后遍历每个字段,检查该字段是否在数组中,如果没有,则添加它
var arr = [];
$(':input.File').each(function(){
if(arr.indexOf($(this).val()) > -1){
$(this).after("<br/><span class='error'>Duplicate</span> ");
}else{
arr.push($(this).val());
}
})
var arr=[];
$(':input.File')。每个(函数(){
if(arr.indexOf($(this.val())>-1){
$(此)。之后(“
重复”);
}否则{
arr.push($(this.val());
}
})
如果您知道总会有至少一个副本,为什么不只允许一个副本呢
i = 0;
$(':input.File').each(function() {
if ($(this).val() == T && i != 0) {
$this.after('<br/><span class="error">Duplicate</span>');
}
i++;
})
i=0;
$(':input.File')。每个(函数(){
if($(this).val()==T&&i!=0){
$this.after(“
Duplicate”);
}
i++;
})
如果您知道总会有至少一个副本,为什么不只允许一个副本呢
i = 0;
$(':input.File').each(function() {
if ($(this).val() == T && i != 0) {
$this.after('<br/><span class="error">Duplicate</span>');
}
i++;
})
i=0;
$(':input.File')。每个(函数(){
if($(this).val()==T&&i!=0){
$this.after(“
Duplicate”);
}
i++;
})
您可以使用地图跟踪存在的值
(function(){
var exists = {};
$(':input.File').each(function() {
if(exists[$(this).val()]){
$this.after("<br/><span class='error'>Duplicate</span> ");
} else {
exists[$(this).val()] = true;
}
});
})()
(函数(){
var exists={};
$(':input.File')。每个(函数(){
if(存在[$(this).val()){
$this.after(“
副本”);
}否则{
存在[$(this).val()]=true;
}
});
})()
您可以使用地图跟踪存在的值
(function(){
var exists = {};
$(':input.File').each(function() {
if(exists[$(this).val()]){
$this.after("<br/><span class='error'>Duplicate</span> ");
} else {
exists[$(this).val()] = true;
}
});
})()
(函数(){
var exists={};
$(':input.File')。每个(函数(){
if(存在[$(this).val()){
$this.after(“
副本”);
}否则{
存在[$(this).val()]=true;
}
});
})()
对于每次用户操作后的检查:
$('input[type=file]')。更改(函数(){
$('input[type=file][value=“”+$(this.val()+”)。不是(this.after)(“
Duplicate”);
});
对于每次用户操作后的检查:
$('input[type=file]')。更改(函数(){
$('input[type=file][value=“”+$(this.val()+”)。不是(this.after)(“
Duplicate”);
});
我一定很胖,但是,T
从哪里来?我一定很胖,但是,T
从哪里来?为什么投反对票+1来补偿,因为这实际上是我建议的,但是有一个array@JuanMendes我也在想同样的事情,但现在已经过去了。为什么要投否决票+1来补偿,因为这实际上是我建议的,但是有一个array@JuanMendes我也在想同样的事情,但现在已经不见了。谢谢。工作很有魅力,谢谢你。工作得很有魅力。