2013-04-08 2 views
1

드롭 다운 목록의 값 (옵션)을 다른 드롭 다운 목록으로 복사하려고합니다. 사용자가 추가 버튼을 클릭 할 때마다 새 테이블 행에 여러 텍스트 상자와 원본의 사본 인 드롭 보관함이 추가됩니다. 벨로 우어가 내 코드 :하나의 드롭 다운 옵션을 다른 것으로 복사 할 수 없습니다.

$(function(){ 
$("#addBtn").click(function(){ 
    var rows = $("#nofRowHidden").val();//get the current no of row 
    rows++; 
    $("#crsTable").append(
    '<tr>'+ 
    '<td><input type="text" name="assesmntNameTxtBx'+rows+'"/></td>'+ 
    '<td><input type="text" name="markRcvdTxtBx'+rows+'"/></td>'+ 
    '<td><input type="text" name="totalTxtBox'+rows+'"/></td>'+ 
    '<td>'+ 
    '<select name="drpDwnCrs'+rows+'">'+ 
    '</select>'+ 
    '</td>'+ 
    '</tr>' 
    ); 
    //#drpDwnCrs1 was original drbdwn and populated with data from the database 
    $("#drpDwnCrs1 option").clone().appendTo("#drpDwnCrs"+rows); 

    $("#nofRowHidden").val(rows);//add current no of row to hidden txt bx 
    }); 
}); 

위 코드는 텍스트 상자가있는 새 행을 올바르게 생성합니다. 그러나 드롭 다운 목록의 값을 복사하지 못합니다.

감사합니다.

답변

1

.appendTo("#drpDwnCrs"+rows)을 사용 중입니다. 여기에서 #id 선택 자입니다.

<select>을 만들 때 '<select name="drpDwnCrs'+rows+'">'+을 사용하고 있습니다. 즉, name 속성을 설정하고 id 속성을 설정하지 않았 음을 나타냅니다. 즉, appendTo 호출에 대한 jQuery 선택기가 요소를 찾지 못해 아무 것도하지 않는다는 의미입니다.

내가가 언급 한 코드를 변경해보십시오 : 그것은 새로운 사업부에 원래 사업부의

// $("#drpDwnCrs1 option").clone().appendTo("#drpDwnCrs"+rows); change this to 

$("#drpDwnCrs"+rows).html($('#drpDwnCrs1').html()); 

이 복사됩니다 전체 옵션이 될 것입니다

.appendTo('select[name="drpDwnCrs' + rows + '"]') 
+0

이드의 실수를 지적 해 주셔서 감사합니다. 위에서 언급 한 방법을 시도했지만 작동하지 않았습니다. 그래서 나는 그 아이를 위해 이드를 만들었다. 감사. – Sas

1

수 있습니다 (/jsfiddle.net/slash197/a98U8/5/) 당신을 위해 유용합니다.

+1

도움을 주셔서 감사합니다. – Sas

1

.

+0

Debopam에게 감사드립니다. 문제는 이안이 말했듯이 그 이름의 이드가 없었던 내 바보 같은 실수였습니다. 당신의 도움을 주셔서 감사합니다. – Sas

관련 문제