使用select来选择,,,选择就响应真是花了好大的功夫。。。。你妹。。。在controller设置变量来储存选择后的值。。。js中如果select选择为空那么传入的值是””而不是null

selectedIndex的值都是数字,从0开始,而不是option的值

controller

#sdn的网络流量监控
def monitor
@vms = VirtualMachine.owned_by(current_user).select('*').joins("left join vnets on virtual_machines.vnet_id = vnets.id").where("vnets.net_type = 'sdn'")
@switches = [["second","_10seconds"],["minute","_5minutes"],["hour","_hour"],["day","_day"],["week","_week"],["month","_month"],["year","_year"]]
@ccs = [["",""],["",""],["",""],["",""],["",""],["",""],["",""],["",""],["",""],["",""]]
@jiange_value = params[:times]
@col_value = params[:col]
@lscol = @col_value.to_i id_hash = Hash.new
id_hash["_10seconds"] = ""
id_hash["_5minutes"] = ""
id_hash["_hour"] = ""
id_hash["_day"] = ""
id_hash["_week"] = ""
id_hash["_month"] = ""
id_hash["_year"] = ""
@lsjiange = id_hash[@jiange_value]
End

monitor.html.erb

<%= render partial: 'vnet_nav_bar' %>
<meta charset="utf-8">
<head>
<script>
window.onload = initForm;
function initForm()
{
//alert("<%= @lsjiange %>");
document.getElementById('col').selectedIndex = <%= @lscol %>
document.getElementById('times').selectedIndex = <%= @lsjiange %>
document.getElementById("col").onchange = popu;
document.getElementById("times").onchange = popu;
} function popu()
{
//alert("bb");
var form1 = document.getElementById("idform");
form1.submit(); var c = document.getElementById('col').selectedIndex;
//alert(c); }
</script>
</head>
<%= form_tag("monitor",:id => "idform",name: "idform") do |f| %>
<%= select_tag "times", options_for_select(@switches),prompt: "选择间隔>时间" %>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <%= select_tag "col", options_for_select(@ccs), prompt: "选择列数" %>
&nbsp;&nbsp;&nbsp;
<%= submit_tag("刷新") %> <% columns = @col_value.to_i %>
<% if columns == 0 %>
<% columns = 2 %> <% if columns == 0 %>
<% columns = 2 %>
<% end %> <% if @jiange_value == "" %>
<% @jiange_value = "_5minutes"%>
<% end %> <% rows = @vms.size/columns %>
<% unless (@vms.size%columns)==0 %>
<% rows = rows + 1 %>
<% end %>
<% vmid = 0 %> <center>
<table>
<% for i in 0..rows-1 do %>
<tr>
<% for j in 0..columns-1 do %>
<td>
<% if @jiange_value.nil? %>
<% @jiange_value = '_5minutes' %>
<% end %>
<%= image_tag("rrdtool/#{@vms[vmid].uuid}#{@jiange_value}.png") %>
<% vmid = vmid + 1 %>
</td>
<% if vmid >= @vms.size %>
<% break %>
<% end %>
<% end %>
</tr>
<% end %>
</table>
</center>
<% end %>

select_tag 选择后自动提交,并且保持选择的项的更多相关文章

  1. JS实现日历控件选择后自动填充

    最近在做人事档案的项目,在做项目的初期对B/S这块不是很熟悉,感觉信心不是很强,随着和师哥同组人员的交流后发现,调试程序越来越好了,现在信心是倍增,只要自己自己踏实的去研究.理解代码慢慢的效果就出来了 ...

  2. Framework 7 之 Smart select 选择后自动隐藏

    Framework 7官网地址:Framework 7(英文版) Framework 7(中文版) 给“smart-select”添加属性  data-back-on-select="tru ...

  3. django中form页面刷新后自动提交的解决方案

    如果一个页面包含了form,同时这个form中的提交按钮是type=submit的input的时候,你刷新该页面,就会有弹窗提示是否重新提交表单,这个特性不胜其烦,常见解决方法有两个: 第一种是前端的 ...

  4. yii gridview 时间段筛选(一个输入框,自动提交,高清大图)

    yii gridview功能强大,但是时间筛选比较麻烦,与数据库的存储格式有关,本文的时间格式是date类型 那么问题来了,yii只提供关于时间的text搜索格式,就是只能查找精确日期比如2017-8 ...

  5. ssi-uploader上传图片插件,点击选择文件按钮自动提交表单解决办法

    先介绍一下这款插件,然后再谈使用中可能遇到的问题 ssi-uploader是一个JQuery的图片上传插件,界面比较美观 github地址:https://github.com/ssbeefeater ...

  6. EasyUI 1.3.2 中 Combobox自动检索 键盘上下选择Bug问题

    EasyUI 自带的Combobox控件,提供了下拉列值自动检索功能. 在用到的EasyUI 1.3.2版本中还是有点问题,在键盘上下键移动选择过程中只能定位在第一个,不能正常向下移动 问题解决方式: ...

  7. HTML Select 标签选择后触发jQuery事件代码实例

    页面设计原由: 因为很多客户不知道如何来到我们公司,领导想让我在微信公众号上面做一个链接,客户可以直接通过微信公众号打开地图并导航到我们公司的办公地点. 实现起来并不难,但由于公司有很多办事处,所以需 ...

  8. element-ui中select下拉框,选择后赋值成功,但是框上不显示的坑

    这个是今天遇到一个坑,因为也是第一次使用vue+element-ui开发,所以记录一下自己遇到的一些问题. 这个问题是在开发省市区三级联动组件的时候遇到的,具体的情况如下发的gif图,虽然解决了问题, ...

  9. linux自动化交互脚本expect详解set timeout 5是 意思是在expect语句中,5s后超时,不再作出选择。

    linux自动化交互脚本expect详解  更新时间:2020年10月21日 10:13:20   作者:lendsomething     这篇文章主要介绍了linux自动化交互脚本expect的相 ...

随机推荐

  1. Direct2D开发:绘制网格

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.引言 最近在使用Direct2D进行绘制工作中,需要实现使用Direct2D绘制网格的功能.在网上查了很多资料,终于实 ...

  2. [Bootstrap]7天深入Bootstrap(2)整体架构

    大多数Bootstrap的使用者都认为Bootstrap只提供了CSS组件 和JavaScript插件,其实CSS组件和JavaScript插件只是Bootstrap框架的表现形式而已,它们都是构建在 ...

  3. .Net一般处理程序来实现用户名的验证

    一般处理程序 在说一般处理程序之前,先来看看什么是aspx.在vs中,使用的大多是aspx页面.aspx页面就是在接收到一个请求之后,将返回的结果生成一个html页面返回给服务器.当我们有时候需要自己 ...

  4. 用UltraISO制作支持windows 7的U盘启动盘

    用UltraISO制作U盘启动盘,有人写过,我也看过,不过依照网上的那些文章,成功的并不多,经过几次试验,在不同的主板环境下成功概率高的方法应该如下:   1. UltraISO建议9.3以上 2. ...

  5. .net reflector激活

    1.断网 2. 运行.NET Reflector,点击Help -> Activate 3. 运行注册机,复制注册机生成的序列号,粘贴到.NET Reflector中的激活输入框 4. 点击激活 ...

  6. 【jQuery基础学习】05 jQuery与Ajax以及序列化

    好吧,这章不像上章那么水了,总是炒剩饭也不好. 关于AJAX 所谓Ajax,全名Asynchronous JavaScript and XML.(也就异步的JS和XML) 简单点来讲就是不刷新页面来发 ...

  7. 技巧题---Single boy

    Description Today is Christmas day. There are n single boys standing in a line. They are numbered fo ...

  8. JSONArray.toCollection 封装 bean 失败

    1. 问题描述: 通过http请求服务端, 返回的bean的集合的字符串形式, 其中bean中的Date类型的属性值,形式为Long类型的表示形式(1466083519000): String res ...

  9. linux多线程-互斥&条件变量与同步

    多线程代码问题描述 我们都知道,进程是操作系统对运行程序资源分配的基本单位,而线程是程序逻辑,调用的基本单位.在多线程的程序中,多个线程共享临界区资源,那么就会有问题: 比如 #include < ...

  10. 操作iframe

    iframe是在页面中嵌套的子页,当前页面(这里称为父页)和嵌套页面(这里称为子页)可以相互控制: 当父页控制子页用contentWindow,用法为 对象.contentWindow.documen ...