Ich habe ein Formatierungsproblem mit meinem Hyperlink. Es funktioniert einwandfrei mit dem Textteil, sodass ich weiß, dass es sich um ein Problem mit JavaScript handelt, aber nicht weiß, wo das Problem liegt.

<asp:TemplateField>
    <ItemTemplate>
        <asp:HyperLink ID="hypCustType" runat="server" 
            Text='<%# DataBinder.Eval(Container.DataItem, "CustType") %>'
            NavigateUrl="javascript:sendval('<%# DataBinder.Eval(Container.DataItem, "CustType") %>');">
        </asp:HyperLink>
    </ItemTemplate>
</asp:TemplateField>
0
connersz 9 Dez. 2013 im 13:33

3 Antworten

Beste Antwort

Ersetzen Sie den asp: hyperlink durch einen normalen HTML-Tag-Link:

<a href="javascript:sendval('<%# DataBinder.Eval(Container.DataItem, "CustType") %>');">
            <%# DataBinder.Eval(Container.DataItem, "CustType") %>'</a>
1
giammin 9 Dez. 2013 im 10:06

'Das Problem ist, dass Sie die Zeichenfolge in der NavigateUrl-Eigenschaft geschlossen haben. Sie sollten ' oder \" innerhalb des Inline-Codes verwenden, um die Zeichenfolge nicht zu beenden. Also sollten Sie Folgendes versuchen:

<asp:TemplateField>
    <ItemTemplate>
        <asp:HyperLink ID="hypCustType" runat="server" 
            Text='<%# DataBinder.Eval(Container.DataItem, "CustType") %>'
            NavigateUrl="javascript:sendval('<%# DataBinder.Eval(Container.DataItem, \'CustType\') %>');">
        </asp:HyperLink>
    </ItemTemplate>
</asp:TemplateField>
3
RononDex 9 Dez. 2013 im 09:55

Versuchen Sie es wie folgt:

<asp:HyperLink ID="hypCustType" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CustType") %>' NavigateUrl='<%# "javascript:sendval(\"" + DataBinder.Eval(Container.DataItem, "CustType") + "\");" %>'></asp:HyperLink>
1
nphx 9 Dez. 2013 im 09:52