.net html页面显示图片,asp.net mvc 使用Html.ActionLink显示图片链接

本文探讨了在MVC框架中如何使用Ajax.ActionLink创建带有图片的链接,并通过扩展方法解决了这一问题。同时介绍了使用Url.Action作为替代方案的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在mvc中,显示一个指向某action的链接,可以用Html.ActionLink

@Html.ActionLink("text", "index")

其中text是链接a显示的文字,如果希望链接加在一个图片上,用这样的方式就会有问题了

@Html.ActionLink("", "index")

0020c8d7dbd1a1289ea8524ee94a9f3f.png

Html为:

15de4366863786b633d9bc4014c7e863.png

当然,对于这种情况,我们可以用Url.Action来解决

如果是Ajax.ActionLink呢

@Ajax.ActionLink("", "index", newAjaxOptions{UpdateTargetId="updiv",OnSuccess="dosomthing"})

21aa7847e02a4a6722ffddae2ee88fc5.png

当使用Ajax.ActionLink时,mvc自动为我们添加了一些a元素上得属性,他和jquery.unobtrusive-ajax.js一起作用,实现了很方便的ajax功能。

遗憾的是同样不同输出html代码,如果这个也要用Url.Action的话,那一堆属性都得自己手写,实在是。。。

使用扩展方法,对Ajax.ActionLink生成的结果(MvcHtmlString)做一些处理

@Ajax.ActionLink("", "index", newAjaxOptions{UpdateTargetId="updiv",OnSuccess="dosomthing"}).WriteHtml()

79afb14fcd4e45e51d13d92f9427aada.png

a下面已经包含有一个img元素

扩展方法很简单

public staticIHtmlStringWriteHtml(thisMvcHtmlStringstr)

{

return newHtmlString(HttpUtility.HtmlDecode(str.ToString()));

}

输出各种html

@Ajax.ActionLink("text", "index", newAjaxOptions{UpdateTargetId="updiv",OnSuccess="dosomthing"}).WriteHtml()

57e1cbff60086b52eedc551fa9d57302.png

对Html.ActionLink,Ajax.ActionLink都好使

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值