0

如果我有一组图像(按钮)甚至只是平面图像,连续 5 个,并且我想实现以下目标,那么最简单的方法是什么,我真的找不到一个好的解决方案:

  • 点击其中一张图片,需要获取一个新的src,而其他的则需要恢复到原始状态。

  • 一个 Asp:Label 需要在点击时设置,基于点击的图像

  • 在进行 PostBack 时,我需要知道选择了哪一个

除此之外,它是 asp.net 4.0,所以单引号给了我 javascript 的痛苦。

4

1 回答 1

0

点击其中一张图片,需要获取一个新的src,而其他的则需要恢复到原始状态。

  1. 首先,您必须创建一个函数,将所有 5 个图像设置为原始状态。
  2. 然后确保为每个图像元素赋予相同的类名。
  3. 之后创建一个函数,该函数将根据类名触发,例如

        $(".classname").click(function(){
    
       //first call the function which will set all 5 images to original state.
    
       //then change the source of the current image. onwhich user has clicked as below:
    
        $(this).attr("src","new source");
       // here you can store the id of current image in a variable to keep the record which images have  been clicked
      });
    

一个 Asp:Label 需要在点击时设置,基于点击的图像

您可以在上述函数中轻松设置 Asp:Label。如果您熟悉 javascript 代码。设置起来太简单了。

在进行 PostBack 时,我需要知道选择了哪一个

在创建第一个之后,function您剩下的两个步骤将自行完成。

在上面,function您已经保存了用户在variable.

在这样做postback时,您可以轻松地将varibale's数据保存hiddenfield或分配给静态varibale或您喜欢的任何方式。

最后你可以在code behind.

如果我必须做这件事。我会按照上面的流程。它的过程非常简单快捷。一切都可以在客户端完成。

你认为呢?

于 2013-03-30T12:23:17.397 回答