2011-08-09 112 views
0

有誰知道我如何將值傳遞給JavaScript中的JavaScript函數:LinkBut​​ton OnClientClick?如何將值傳遞給JavaScript中的JavaScript函數:LinkBut​​ton OnClientClick?

示例: 如果我有以下代碼:

<asp:ListView ID="lvTeams" runat="server" DataSourceID="dsTeams" DataKeyNames="ReferenceValue" 
    OnItemCommand="lvTeams_ItemCommand"> 
    <LayoutTemplate> 
     <ul style="color:#fe8113;"> 
     <asp:PlaceHolder ID="itemPlaceholder" runat="server" /> 
     </ul> 
    </LayoutTemplate> 
    <ItemTemplate> 
     <li> 
     <asp:LinkButton runat="server" OnClientClick="return multipleTeamsAllowedValidation()" CausesValidation="true" CommandName="" CssClass="orange" 
      Text='<%# Eval("TeamName")%>' /> 
     </li> 
    </ItemTemplate> 
    </asp:ListView> 

我怎樣才能傳遞值<%# Eval("ReferenceValue")%>成在asp:LinkButton OnClientClick事件JavaScript函數multipleTeamsAllowedValidation() ??

回答

0

您可以嘗試

onclick= 'multipleTeamsAllowedValidation(<%# Eval("SHOW_Name") %>);' 

您可以嘗試THIS.VALUE或this.InnerText傳遞價值爲html功能

<asp:LinkButton runat="server" OnClientClick="return 
multipleTeamsAllowedValidation(this.InnerText)" CausesValidation="true" CommandName="" 
CssClass="orange" Text='<%# Eval("TeamName")%>' /> 

你可以通過傳遞這個對象本身

OnClientClick="return multipleTeamsAllowedValidation(this)" 

比你能夠輕鬆地訪問它的文本和執行操作。

在功能上做document.getElementById(this.Id).innerText or this.innerText

+0

不能正常工作.. :( –

+0

@金勇 - 嘗試第二個選項通過此功能agrument和臨時獲取訪問它的文本 –

+0

這是工作,但我想要得到的是從DataKeyNames <%#Eval(「ReferenceValue」)%>)而不是innerText –

0

恕我直言,它的好了很多,寫的小幫手。

標記。

OnClientClick='<%# SetClientClick(Eval("ReferenceValue")) %>'> 

代碼隱藏

protected string SetClientClick(object objName) 
{ 
    return String.Format("javascript:return multipleTeamsAllowedValidation('{0}');", objName.ToString()); 
} 
相關問題