2010-04-12 5 views
2

에 항목을 추가 나는자바 스크립트 + 드롭 다운

1. lstA 
    test1 
    test2 
    test3 
    test4 

2. lstB 

지금 LSTA의 선택에, 나는 또한 선택 하나의 내용을 제외하고 lstB에 LSTA의 모든 항목을 채우려 내 JSP 페이지에 두 개의 드롭 다운을 lstA는 동일하게 유지되어야합니다.

어떻게하면됩니까?

나는 그것을 시도했으나, lstA에서 임의의 항목이 제거되었는데, 이것은 꽤 유선이다.

+0

JSP 또는 자바 스크립트? 후자의 경우 약간의 HTML/JS 코드를 게시하는 것이 좋습니다. –

답변

8

당신이 당신의 답에 거의 맞았습니다.

참고 사항 : 추가하기 전에 클라이언트 목록을 지워야합니다. 그렇지 않으면 추가되는 항목이 늘어날 것이므로 클라이언트 목록에 추가하기 전에 옵션을 복제해야합니다. 노드 언제든지 부모 중 한 명만 존재할 수 있습니다.

이 테스트하고 나를 위해 작동 된

:

<html><body> 
<script language="javascript"> 
function populateClient() { 
    var serverList = document.getElementById("dropdown1"); 
    var clientList = document.getElementById("dropdown2"); 

    clientList.options.length = 0; // this removes existing options 

    for (var i = 0; i <= serverList.options.length; i++) { 
     if (!serverList.options[i].selected) { 
      clientList.options.add(serverList.options[i].cloneNode(true)); // cloneNode here 
     } 
    } 
} 
</script> 

<select id="dropdown1" onchange="populateClient()"> 
    <option value="value1">value1</option> 
    <option value="value2">value2</option> 
    <option value="value3">value3</option> 
    <option value="value4">value4</option> 
    <option value="value5">value5</option> 
</select> 
<select id="dropdown2"> 
</select> 
</body></html> 
0
function populateClient(selectItem, clientItem) { 
      var serverList = selectItem; 
      for(var i = 1; i <= serverList.options.length; i++) { 
       if (!serverList.options[i].selected) 
        clientItem.options.add(serverList.options[i]); 
      } 
     } 

여기서 selectItem 및 clientItem은 드롭 다운입니다.

이렇게하면 일부 데이터가 임의로 clientItem에 채워지고 selectItem의 일부 항목이 제거됩니다.

0

는 값 드롭 다운 목록에 추가됩니다이

<script type="text/javascript"> 
    function AddItem() 
    { 
     // Create an Option object  
     var opt = document.createElement("option");   

     // Assign text and value to Option object 
     opt.text = "New Value"; 
     opt.value = "New Value"; 

     // Add an Option object to Drop Down List Box 
     document.getElementById('<%=DropDownList.ClientID%>').options.add(opt); 
    } 
<script /> 

보십시오.

관련 문제