首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery提交函数是否可以更改jQuery代码elswhere或更改读取的块?

jQuery提交函数是否可以更改jQuery代码elswhere或更改读取的块?
EN

Stack Overflow用户
提问于 2011-03-10 07:09:53
回答 1查看 109关注 0票数 0

我有一个场馆表,其中每个场馆都属于一个区域,我正在尝试学习一些关于jQuery的知识,以便在我的应用中使用。我在会场索引页面上有一个过滤表单,按面积过滤会场部分。我也有一个.png地图图像,显示所有的地区,并有绝对定位放置的图标,显示在这些地区的场馆在哪里。

我的index.html.erb中的jQuery代码更改了地图图像:

代码语言:javascript
复制
<script type="text/javascript">
  $(document).ready(function() {
    $("form").submit(function() {
      if ($("#area-1").is(':checked'))
        $(".map_container").addClass("area1");
      else if ($("#area-2").is(':checked'))
        $(".map_container").addClass("area2");
      else if ($("#area-3").is(':checked'))
        $(".map_container").addClass("area3");
      else
        nil;
    });
  });
</script>

my venue partial中的jQuery代码显示地图图标:

代码语言:javascript
复制
<script type="text/javascript">
  document.getElementById("venue_map_icon_<%= venue.id %>").style.left= "<%= venue.iconleftpx %>px";
  document.getElementById("venue_map_icon_<%= venue.id %>").style.top= "<%= venue.icontoppx %>px";
</script>

有没有办法使索引页面中的代码同时改变地图图像中的部分代码?

所以如果选择了area1,那么地图图像就会改变,但分词中的代码行也会改变,当前的代码行是"<%= venue.iconleftpx %>px“和"<%= venue.icontoppx %>px”,而不是"<%= venue.iconleftpx2 %>px“和"<%= venue.icontoppx2 %>px”。这样,随着地图图像的改变,过滤的场馆图标的位置也会随之改变。或者有没有可能有两个代码块,并根据在过滤器表单中选择的内容更改读取的代码块?

感谢任何帮助,如果我的问题是虚荣的或缺乏的,我很抱歉,我是超级新手。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-10 17:49:14

我并没有完全理解您的意思,但我认为您可以同时加载地图和表,并在用户提交时使用ajax-get-request从数据库中提取地图图标的坐标。

在服务器端,您可以只添加一个JSON回复到例如show操作,并让rails将地点(或仅坐标)呈现为JSON。或者,您可以有一个特殊的操作,它接受一个venue-id:s数组并返回一个坐标数组。

在客户端,您将使用jQuery.ajax()-method中的成功或完成函数来使用您收到的JSON数据移动地图图标。

Information about jQuery ajax (jQuery API)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5253451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档