asp.net mvc:Ajax actionlink还是Jquery解决方案?

zsh*_*arp 3 asp.net asp.net-mvc jquery asp.net-ajax

我试图改变点击图像类似于投票箭头和复选标记的SO.

我想要:

1-让每个图像成为Ajax.ActionLink,并在单击时返回不同的图像.

2-让图像成为超链接的背景,并使用Ajax.ActionLink替换css类以获取新图像.

3-改用JQuery.

哪种方式最好,你能举例吗?

TSt*_*per 5

jquery是最好的,因为如果你在asp.net-mvc中使用actionlink那么你必须为每个点击的图像处理一个链接(Action Method),这可能会变得复杂起来.

在jquery你有这样的东西,可以最大限度地减少难度

 $(document).ready(function() {
       //image is the name of the class of your images
     $(".image").click(function() {

     $(".image").hide(); //just an example..
        });
 }) ;      
Run Code Online (Sandbox Code Playgroud)

这将隐藏被点击的图像..请参阅jquery教程,以使图像完全按照您要点击的方式进行操作.或者将css添加到图像或更改放大或等等.保持自从你正在使用asp.net,如果你使用asp web控件并想在jquery中调用id而不是类,那么它有点不同.没有asp web控件,这将是这种方式来调用id:

  ("#image1").click(function() {
Run Code Online (Sandbox Code Playgroud)

但使用像asp:imagebutton这样的asp web控件,它会是这样的:

   ("#ct100_******image1").click(function() {
Run Code Online (Sandbox Code Playgroud)

星号可以是任何东西..您必须首先查看源代码以查看呈现的实际ID名称,因为asp.net更改控件的id名称,您将属性设置为runat = Server,默认情况下你必须设置runat = server for asp web controls来编译