锁定老帖子 主题:check_box使用疑问
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-16
qiezi 写道 jack 写道 qiezi 写道 忘了一个最好的办法了: <%= check_box_tag "my_data[]", mydata.id %> 发送过去的肯定是你最喜欢的 你这样的代码没法子用,如果用在一个循环里面输出多个check_box,最后post的时候,只有一个数据提交。 你真的试过了吗?还是凭自己的直觉? 试过了,所以才间隔这么久才回复的。就是为了试了才确定的。你这样的写法,最后生成的 input的name值是完全相同的,最终提交的时候,就会只能提交某一个checkbox的现象,这个在我开始的帖子里面就提到了。 |
|
返回顶楼 | |
发表时间:2006-11-16
你大概是漏掉了什么,这里有个测试代码:
class TestController < ApplicationController def test if request.method == :get render :inline => <<-EOS <form action="/test/test" method="post"> <% 5.times do |index| -%> <%= check_box_tag "foo[]", index %>item <%= index %><br /> <% end -%> <%= submit_tag %> </form> EOS else render :text => params[:foo].to_json end end end 先访问/test/test,出现一个表单,提交后将看到你选择的结果。 提交的参数如下: 引用 Processing TestController#test (for 127.0.0.1 at 2006-11-16 23:55:01) [POST] Session ID: 6ec9a9641360509d53dc5d8f7fc1d70b Parameters: {"commit"=>"Save changes", "action"=>"test", "foo"=>["0", "1"], "controller"=>"test"} Completed in 0.01600 (62 reqs/sec) | Rendering: 0.00000 (0%) | 200 OK [http://localhost/test/test] 如果你是做批量更新记录,直接把上面的foo取出来用in操作就可以了。 |
|
返回顶楼 | |
发表时间:2006-11-17
哦 我有些点忘记提了,我以为不重要的,这些check_box_tag我是放在form_remote_tag中的,可能这个有影响,而不是form_tag
|
|
返回顶楼 | |
发表时间:2006-11-17
jack 写道 哦 我有些点忘记提了,我以为不重要的,这些check_box_tag我是放在form_remote_tag中的,可能这个有影响,而不是form_tag
form_remote_tag也是可以的。 |
|
返回顶楼 | |