2013-12-09 3 views
0

У меня проблема с форматированием с моей гиперссылкой, она работает нормально с текстовой частью, поэтому я знаю, что это проблема с JavaScript, но не знаю, в чем проблема.Тег сервера плохо сформирован - гипертекстовая привязка

<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> 

ответ

1

заменить жерех: гиперссылка с обычной ссылкой HTML тегов:

<a href="javascript:sendval('<%# DataBinder.Eval(Container.DataItem, "CustType") %>');"> 
      <%# DataBinder.Eval(Container.DataItem, "CustType") %>'</a> 
1

Попробуйте так:

<asp:HyperLink ID="hypCustType" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CustType") %>' NavigateUrl='<%# "javascript:sendval(\"" + DataBinder.Eval(Container.DataItem, "CustType") + "\");" %>'></asp:HyperLink> 
2

«Проблема заключается в том, как вы закрыли строку в Свойство NavigateUrl. Вы должны использовать ' или \" внутри встроенного кода, чтобы не кончить строку. Итак, вы должны попробовать следующее:

<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> 
Смежные вопросы