【问题标题】:ASP.Net 4.0 image select and change sourceASP.Net 4.0 图像选择和更改源
【发布时间】:2013-03-21 00:03:13
【问题描述】:

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

  • 点击任意一张图片,都需要获取新的src,其他的需要恢复到原来的状态。

  • 需要在点击时根据点击的图片设置 Asp:Label

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

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

【问题讨论】:

  • 它是一个很大的应用程序。需要时间。你不是在问问题。甚至要求提供整个应用程序。
  • 哦不,请不要这样解释它。我不是要一个完成的代码块。我只是在问最好的做法是什么。
  • 你知道如何标记答案吗?

标签: asp.net image select


【解决方案1】:

点击任意一张图片需要获取新的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 中单击的图像的ID。

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

终于可以在code behind访问了。

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

你怎么看?

【讨论】:

  • 我从 javascript 开始,但被困在 asp.net 4.0 上,无法处理单引号。我知道我可以编写自己的 htmlwriter,但我正在考虑这是否可行。在上述解决方案中最让我受益的是,是否最好在 javascript 中完成这一切......但是,我肯定会重试这个设置,因为这确实是一种快速的方法。谢谢你们的cmets!
  • “asp.net 4.0 不处理单引号”是什么意思?请提供代码。顺便说一句,您要求“最佳做法”。我已经给了你完成这项工作的最佳方法。休息取决于你,你在代码中遇到了一些问题。如果我的回答对您有帮助(不是在代码中)。然后将其标记为答案。它可以帮助别人。
  • 你应该用javascript来做。这种工作需要客户端实现。如果您将在服务器端尝试。想、做、看一定是不现实的。
  • asp.net 在 attributes.add 处理引号方面存在一些问题。您的其余答案很好地处理了我的问题,谢谢。 stackoverflow.com/questions/3013912/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-29
相关资源
最近更新 更多