使用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. 时尚前沿:15个创意的 3D 字体设计艺术作品欣赏

    在这里,我们为大家呈现30个创意的3D版式设计,注意每个设计中字体,颜色,款式的使用,让您享受并得到他们的灵感. 版式设计是一个美丽的艺术形式.无论是粗体还是细体,用不同的字体或使用拟物化技术操纵文本 ...

  2. The Linux Process Principle,NameSpace, PID、TID、PGID、PPID、SID、TID、TTY

    目录 . 引言 . Linux进程 . Linux命名空间 . Linux进程的相关标识 . 进程标识编程示例 . 进程标志在Linux内核中的存储和表现形式 . 后记 0. 引言 在进行Linux主 ...

  3. 说说jsonp

    什么是jsonp jsonp充其量只能说是一种"方法".它可以让页面从其他域中获取资料.   首先要知道的是同源策略,在javascript中使用http请求(ajax)是会受到同 ...

  4. java的poi技术下载Excel模板上传Excel读取Excel中内容(SSM框架)

    使用到的jar包 JSP: client.jsp <%@ page language="java" contentType="text/html; charset= ...

  5. C++ - 多线程的实现

    支持多线程可谓是C++语言最大的变化之一. 此前,C++只能利用操作系统的功能(Unix族系统使用pthreads库),或是例如OpenMP和MPI这些代码库,来实现多核计算的目标. C++本身并没有 ...

  6. AEAI DP开发平台升级说明

    本次发版的AEAI DP_v3.5.0版本为AEAI DP _v3.4.0版本的升级版本,该产品现已开源并上传至开源社区http://www.oschina.net/p/aeaidp. 1 升级说明 ...

  7. 使用HttpRequester模拟发送及接收Json请求

    1.开发人员在火狐浏览器里经常使用的工具有Firebug,httprequester,restclient......火狐浏览器有一些强大的插件供开发人员使用!需要的可以在附加组件中扩展. 2.htt ...

  8. sencha panel的头header上添加刷新按钮

    var plet3=Ext.create('portaltest3.view.Portlet',                   { title: '提醒',                   ...

  9. bootstrap - table

    http://bootstrap-table.wenzhixin.net.cn/zh-cn/documentation/

  10. SqlServer知识点记录分享

    知识点介绍 双向检索:这里就不大话概念了,直接说它的作用 ISNULL()函数:判断函数是否有值,如果变量没有赋值就给定指定的值,下面的例子就是如果@TOTALCOUNT变量为NULL那么就赋值为空字 ...