Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

यदि किसी प्रपत्र में संख्या दोहराई जाती है तो त्रुटि उत्पन्न करें

मान लें कि आपके पास इस तरह का फॉर्म है (ध्यान दें कि सभी इनपुट में एक ही वर्ग है):

<form id="myForm" method="POST" action"someUrl">
    <input type="text" class="recordPosition"></input>
    <input type="text" class="recordPosition"></input>
    <input type="text" class="recordPosition"></input>
    <input type="text" class="recordPosition"></input>
</form>

आप jQuery के साथ ऐसा कुछ कर सकते हैं:

 $(document).ready(function(){

 $(".recordPosition").on("blur", function(){
     var allFieldsForOrder = $('.recordPosition');
     var count = 0;
     var i=0
    //console.log(allFieldsForOrder.length );
      while((i<allFieldsForOrder.length) && (count < 2)){
             if ($(allFieldsForOrder[i]).val()===$(this).val())
            {
             count++                 
            }
            i++;
     } 

     if (count==2){
        alert("A duplicated value"); return false;}
    }); 
 });

आपके द्वारा पोस्ट किए गए HTML के लिए आप इसका उपयोग कर सकते हैं:सूचना मैं डुप्लिकेट किए गए मान की स्थिति को संग्रहीत नहीं करता।

$(document).ready(function(){
    //console.log($("input[type='text'][name^='PositionNumber'").length);
    $("input[type='text'][name^='PositionNumber'").each(function(){
         $(this).on("blur", function(){

         var allFieldsForOrder = $("input[type='text'][name^='PositionNumber'");
         var count = 0;
         var i=0

         while((i<allFieldsForOrder.length) && (count < 2)){
                if ($(allFieldsForOrder[i]).val()===$(this).val())
                {
                 count++                 
                }
                i++;
         }

         if (count==2){
            alert("A duplicated value"); 
         }

       });
    });
  });

उपरोक्त कोड के लिए हम मानते हैं कि आप उन सभी क्षेत्रों की जांच करना चाहते हैं जहां विशेषता नाम स्ट्रिंग "PositionNumber" से शुरू होता है

मैं बाद में कोड को कम करने की कोशिश करूंगा, मुझे लगता है कि यह जांचने का एक छोटा तरीका है कि "RecordPosition" मान को डुप्लिकेट किया गया है, लेकिन कुछ विचारों का परीक्षण करने की आवश्यकता है।

यह आपका समाधान होगा (उनमें से एक):

  $(document).ready(function(){


    $('form').on("submit",function(){
            var tempArray=[];
            $("input[type='text'][name^='PositionNumber'").each(function(){
                tempArray.push($(this).val());
            });

            var i=0;
            var duplicated=false;
            var currentElement;
            while((tempArray.length >= 0) && (duplicated==false)){                  
                //pop it out from the array
               currentElement = tempArray.pop();
               duplicated = tempArray.indexOf(currentElement)          

            }

            //after you can use "duplicated" to cancel the submit
            if (duplicated){                    
                alert("duplicated value:" + currentElement);
                return false;
            }

    });
  });

मैं छोटा संस्करण:

$(document).ready(function(){           
 $('form').on("submit",function(){
         var tempArray=[];            
        var exists=0;
         $("input[type='text'][name^='PositionNumber'").each(function(){
             exists = tempArray.indexOf($(this).val());             
             if (exists>=0){                    
                 return false;//break the loop
             }
             tempArray.push($(this).val());                  
         });

         //after you can use "exist" to check if duplicated and retrieve the value to cancel the submit
         if (exists>=0){                   
             alert("duplicated value:" + tempArray[exists]);                
         } else{
             alert("no duplicated value:");
         }

        return false;            
 }); 
});


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या mysqldumps को लोड करने का कोई तेज़ तरीका है?

  2. MySQL GROUP BY क्लॉज में पंक्तियों को कैसे ऑर्डर या चुनें?

  3. Php . का उपयोग करके स्ट्रिंग में सिंगल-कोट (एस्ट्रोफ़े) से कैसे बचें

  4. mysql में रिकॉर्ड द्वारा ग्रुप को और कैसे फ़िल्टर करें?

  5. वेबसाइटों के लिए एक कुशल हिट काउंटर कैसे लिखें