2013-06-08 1 views
0

자바 스크립트 함수에 listview 항목 값을 전달하려는 경우이 컨트롤은 레이아웃 템플릿 내부의 앵커 태그입니다.이 앵커 태그에 데이터를 바인딩하고이 클릭에서 javascripot 함수를 호출하려고합니다.listview 레이아웃 템플릿에서 자바 스크립트로 값을 전달

<asp:ListView ID="ListviewInnerComent" runat="server" DataKeyNames="ID"                OnItemDataBound="ListviewInnerComent_ItemDataBound" OnItemCommand="ListviewInnerComent_ItemCommand"> 
    <LayoutTemplate> 

    <ul id="itemPlaceholderContainer"runat="server"> 
     <li id="itemPlaceholder" runat="server"> 

     </li></ul> 

<div > 
<a href='<%# Eval("ID") %>' id="showmore" class="showmore" runat="server" onclick="GetRecords1();" >Show More</a> 

//WANT TO PASS THIS ANCHOR TAG VALUE THAT i AM BINDING TO JAVASCRIPT FINCTION. 
                       </div> 


                    </LayoutTemplate> 


function GetRecords1 
(response) { 
     var xmlDoc = $.parseXML(response.d); 
     var xml = $(xmlDoc); 

    var ID=document.getElementById("showmore").title; 
alert(ID); 
WANT TO CALL PASSED VALUE HERE 
} 

답변

0

이 대신 사용해보십시오 :

<a href="#" class="showmore" 
    onclick="GetRecords1('<%# Eval("ID") %>');return false;">Show More</a> 

HREF는 = "#"는는 IE와 같은 일부 브라우저는 링크로 요소를 처리 할 보장. false를 반환합니다.은 js 기능이 실행 된 후 링크를 ​​따라가는 웹 브라우저를 차단합니다.

idrunat 속성은 필수 항목이 아니므로 제거했습니다.이 항목은 서버 컨트롤 일 필요는 없습니다.

+0

Listview 내부에서 작동하지 않습니다. ItemTemplate/Layout 템플릿을 삽입하십시오. 이 ID는 앵커 태그와 바인딩되지 않습니다. 앵커 태그를 행의 수에 대해 한 번만 표시하는 옵션이 있습니까? 예를 들어, ItemTemplate 안에 anchortag를 넣으면 앵커 태그는 데이터가있을 때까지 (행이 n 개) 표시되지만, 한 번만 표시하려고합니다. 어떻게 가능할까요? – Kumal

관련 문제