2012-07-30 4 views
0

내 aspx 페이지에 단추가 있습니다. 이 버튼을 사용하여 select 요소에 option 요소를 추가하고 페이지에 표시된 GridView에 일부 데이터를 추가합니다. 이 코드에서 내 코드 숨김을 실행하는 것보다 먼저 option 요소를 넣고 싶습니다.스크립트가 실행되지만 코드 숨김이 없음

function addOptionToSelectElement() { 
    var cb = document.getElementById('<%=comboboxPeople.ClientID %>'); 
    var cbout = document.getElementById('<%=comboboxOutput.ClientID %>'); 
    var op = document.createElement("op"); 
    op.value = cb.options[cb.selectedIndex].value; 
    op.text = cb.options[cb.selectedIndex].text; 
    cbout.appendChild(op); 
} 

그리고 내 코드 숨김 : 여기

protected void buttonAdd_Click(object sender, EventArgs e) 
{ 
    DoSomething(...); 
} 

내 문제 야 : 나는 스크립트가

<asp:DropDownList runat="server" ID="comboboxPeople" ... /> 
<asp:DropDownList runat="server" ID="comboboxOutput" /> 
<asp:Button runat="server" ID="buttonAdd" text="Add passanger" OnClick="buttonAdd_Click" OnClientClick="addOptionToSelectElement();" /> 

:

나는 버튼과 평가 콤보 상자가있는 경우 내 버튼에 스크립트 기능을 첨부하면 코드 숨김이 작동하지 않습니다. 스크립트를 사용하지 않으면 내 코드 숨김이 실행됩니다.

아이디어가 있으십니까? 감사합니다.

+0

JS는 의도 한대로 동작 하는가? 나는 그것을 시도하지 않았으므로 (그것이 유효한지 확실치 않다.)하지만 op를 생성하는 동안 당신이 만들고자하는 요소는'option'이다. 또한'addOptionToSelectElement()'의 끝에'return true; '를 추가하고'OnClientClick = "을 사용하면 어떻게 될까요? addOptionToSelectElement();"? – Zhihao

답변

1

어디 comboboxOutput에서 비롯됩니다. 나는 아래 라인이 없어도 피곤하다.

var cbout = document.getElementById('<%=comboboxOutput.ClientID %>'); 


cbout.appendChild(op); 
+0

감사합니다, Mehmet,하지만 당신의 해결책을 이해하지 못합니다! – Kiwanax

+0

당신은 당신의 예제 코드에서 abow 인 comboboxOutput을 작성하지 않았다? 그것은 내게 오류를주고 ı 그것을 삭제 :) – Mehmet

+0

아, 미안 해요. 이 드롭 다운이 있습니다. HTML 코드에 넣는 것을 잊어 버렸습니다. – Kiwanax

관련 문제