asp.net mvc: Ajax actionlink или решение Jquery? - PullRequest
3 голосов
/ 27 января 2009

Я пытаюсь изменить изображения при нажатии, аналогично тому, что делает SO со стрелками голосования и галочкой.

Я думаю либо:

1- Каждое изображение должно быть Ajax.ActionLink и возвращать другое изображение при нажатии.

2 - изображения должны быть фоном гиперссылки и использовать Ajax.ActionLink для замены класса css для получения нового изображения.

3 - используйте взамен JQuery.

Какой лучший способ и можете ли вы привести примеры?

Ответы [ 2 ]

5 голосов
/ 27 января 2009

jquery - лучший вариант, потому что если вы используете actionlink в asp.net-mvc, вам придется обрабатывать ссылку для каждого кликаемого изображения (метод действия), что может усложнить процесс.

в jquery у вас есть что-то подобное, что может минимизировать сложность

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

     $(".image").hide(); //just an example..
        });
 }) ;      

это скроет изображение, по которому щелкают. Обратитесь к учебникам по jquery, чтобы заставить изображение делать то, что вы хотите сделать, по клику. Следует учесть, что, поскольку вы используете asp.net, если вы используете веб-элементы управления asp и хотите вызывать идентификатор в jquery вместо класса, то это немного отличается. Без веб-элементов управления asp будет такой способ вызова идентификатора:

  ("#image1").click(function() {

, но с использованием веб-элемента управления asp, например asp: imagebutton, это будет примерно так:

   ("#ct100_******image1").click(function() {

звездочки могут быть любыми. Сначала вам нужно будет просмотреть исходный код, чтобы увидеть, какое именно имя рендеринга отображается, потому что asp.net меняет имена элементов управления для тех, для которых вы установили атрибут runat = Server и по умолчанию вы должны установить runat = server для веб-элементов управления asp для компиляции

0 голосов
/ 27 января 2009

Используйте jQuery. При нажатии выполните вызов ajax и переключите класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...