读书人

****把数据绑定到lt;agt;标签上的有关

发布时间: 2012-02-03 22:02:47 作者: rapoo

****把数据绑定到<a>标签上的问题
<a href="<%#((BoardEntity)Container.DataItem).URL %>">个人主页</a>

我数据库中URL存的是:www.sohu.com

可是绑定完却变成了:<a href="http://localhost/default.aspx/www.sohu.com">个人主页</a>


有没有办法变成:<a href="www.sohu.com">个人主页</a>

[解决办法]
参考这个

HTML code
<asp:GridView ID="GridView1" runat="server">            <Columns>                <asp:HyperLinkField DataNavigateUrlFields="WebSite" DataNavigateUrlFormatString="http://www.{0}.com" DataTextField="WebSite" HeaderText="WebSite" />                            </Columns>        </asp:GridView>
[解决办法]
如果数据库中保存的都是 www.sohu.com 这种格式,你可以这样绑定.
<a href='<%# string.Format("http://{0}", Eval("URL")) %>'>个人主页 </a>

ASP.NET会验证,发现这个链接不带"头"的时候它会认为那个链接标识的是当前站点的相对路径.

[解决办法]
我觉得对于这种网址在数据库中还是存"全名"比较好.
如:
http://www.aaa.com
https://www.ppp.com
ftp://www.aa.com
http://www.aaa.com?id=5&t=60
..
[解决办法]
<%#"http://"+DataBinder.Eval(Container.DataItem,"URL").ToString()%>
[解决办法]
<%#Eval("URL","http://{0}")%>
[解决办法]
HTML code
<a href=' <%# string.Format("http://{0}", Eval("URL")) %>'>个人主页 </a>
[解决办法]
前面也可以加上http://就可以了
[解决办法]
探讨
如果数据库中保存的都是 www.sohu.com 这种格式,你可以这样绑定.
<a href=' <%# string.Format("http://{0}", Eval("URL")) %>'>个人主页 </a>

ASP.NET会验证,发现这个链接不带"头"的时候它会认为那个链接标识的是当前站点的相对路径.

读书人网 >asp.net

热点推荐