2013-02-04 35 views
5

मेरे पास 2 मुश्किल यूएक्स JQuery समस्याएं हैं जिन पर मैं वर्तमान में काम कर रहा हूं। मैं JQuery का उपयोग कर 2 फॉर्म चरों को क्लोन कर रहा हूं। मैं इंडेक्स कैसे कर सकता हूं, उन्हें आईडी करें ताकि मैं उन्हें इस आईडी के साथ लेबल कर सकूं। उदाहरण के लिए यदि मैं चुनिंदा बॉक्स से 3 चुनता हूं तो मुझे फॉर्म की 3 लाइनें मिलनी चाहिए और प्रत्येक पंक्ति के बाएं हाथ की तरफ से शुरू होने वाली संख्या के साथ शुरू होना चाहिए 1. फॉर्म, 2. फॉर्म, 3 फॉर्म।क्यों JQUERY क्लोन कार्य करता है और उसमें एक आईडी जोड़ता है और ईमेल मान की पुष्टि करता है?

मेरी दूसरी समस्या है कि मैं पुष्टिकरण [] के खिलाफ परिचर [] को मान्य करना चाहता हूं। मैं इसे क्लोन एचटीएमएल कोड के अंदर कैसे करूं।

यहाँ मेरी JSFiddle http://jsfiddle.net/tGprH/5/

यहाँ मेरी एचटीएमएल कोड है:

<select name="select" id="select"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
</select> 
<br/> 
<p>Email address, Confirm Email Address</p> 
#1 <input type="text" name="attendant[]"/> 
<input type="text" name="confirmattendant[]"/> 
<br/> 

<div id="container"> 

</div> 

यहाँ मेरी JQuery

$("select").change(function() { 

    var select = parseInt($('#select').val() , 10); 
    var $clone = '<input type="text" name="attendant[]" /><input type="text" name="confirmattendant[]" /><br/>'; 
    console.log($clone); 
    var html = ''; 
    for(var i = 1;i< select ; i++){ 
     html += $clone; 
    } 
    $('#container').empty().html(html); 
}).change(); 

उत्तर

0

आप अपने पाश के लिए की तरह में आवश्यक मुद्रित कर सकते हैं है ..

html += '#'+(i + 1)+ ' '+$clone; 

इस

$("select").change(function() { 

    var select = parseInt($('#select').val() , 10); 
    var $clone = '<input type="text" name="attendant[]" /><input type="text" name="confirmattendant[]" /><br/>'; 
    console.log($clone); 
    var html = ''; 
    for(var i = 1;i< select ; i++){ 
     html += '#'+(i + 1)+ ' '+$clone; 
    } 
    $('#container').empty().html(html); 
}) 

fiddle here

0

पहली समस्या के बारे में प्रयास करें: http://jsfiddle.net/tGprH/8/

<button id="compare">compare</button> 

$('#compare').click(function(){ 
    var $attendantArray = $('input[name="attendant[]"]'); 
    var $confirmattendantArray = $('input[name="confirmattendant[]"]'); 
    for(var i = 0;i< $attendantArray.length ; i++) 
    { 
     alert((i+1) + ' attendant [' + $($attendantArray[i]).val() + '/' + $($confirmattendantArray[i]).val() + ']') 
    } 
}); 
: http://jsfiddle.net/tGprH/7/

$("select").change(function() { 

    var select = parseInt($('#select').val() , 10); 
    var $clone = '<input type="text" name="attendant[]" /><input type="text" name="confirmattendant[]" /><br/>'; 
    console.log($clone); 
    var html = ''; 
    for(var i = 1;i< select ; i++){ 
     if(i >= 1) 
      html += '#' + (i+1) + ' ' + $clone; 
     else 
      html += $clone; 
    } 
    $('#container').empty().html(html); 
}).change(); 

और तुलना के बारे में