簡體   English   中英

檢查輸入值是否相同?

[英]Check inputs with same value?

我想檢查輸入是否具有相同的值

輸入是由循環產生的,每次該數字都是變化的

for(int i = 0; i< add; i++) 
{%>
<input  name="<%= i%>" id="<%= i%>" class="form-control" holder="S/Num"/>
<%} %>

我試過了,但是沒有用

<script>
$('input').blur(function() {
  if ($('#s1').attr('value') == $('#s2').attr('value')) {
    alert('Same Value'); return false;
  } else { return true; }
});
</script>

嘗試這個:

 $(function() { var nums = $('input.form-control[id^=s]'); /* find all inputs starting id with `s` */ nums.on('change', function(e) { var map = {}; nums.each(function(i, el) { if (el.value.replace(/\\s/g, '')) { /* trim whitespace */ if (undefined !== map[el.value]) { console.log('duplicate value', el.value, ', found input with id', el.id); el.value = ''; /* reset, if required */ } else { map[el.value] = 1; } } }); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input name="s1" id="s1" class="form-control" placeholder="S/Num" /> <input name="s2" id="s2" class="form-control" placeholder="S/Num" /> <input name="s3" id="s3" class="form-control" placeholder="S/Num" /> 

檢查value屬性是沒有用的。 用戶編輯字段時不會更新。 它僅用於告訴瀏覽器初始值是什么。 您需要使用val()value屬性

   $('input').blur(function() {
        if ($('#s1').val() == $('#s2').val()) {
        alert('Same Value'); return false;
        } else { return true; }
    });

如果要比較未知數量的元素以獲取重復值,請使用數組

$('input').blur(function() {
   var values = []
   $('input').each(function(){
      if(!values.includes(this.value)){
        values.push(this.value)
      }else{
        alert('Name:' + this.name +' is duplicate');        
      }
   });
});

您可以嘗試一下,希望對您有所幫助,並且可以根據您的要求進行更改:

 var valid = true;
 $.each($('input'), function (index1, item1) {
     $.each($('input').not(this), function (index2, item2) {
         if ($(item1).val() == $(item2).val()) {
              valid = false;
         }

     });
 });
 if(valid == false)
 {
   alert("Same Value");
 }
 return valid;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM