mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/cgi/html.rb (CGI::HtmlExtension::{radio_group, checkbox_group}):
can specify the false as checked or selected value. [ruby-core:18306], [ruby-core:18307] * test/cgi/test_cgi_tag_helper.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
645a0eb8ec
commit
9acff4872d
3 changed files with 27 additions and 8 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
Mon Sep 29 00:30:20 2008 Takeyuki Fujioka <xibbar@ruby-lang.org>
|
||||||
|
|
||||||
|
* lib/cgi/html.rb (CGI::HtmlExtension::{radio_group, checkbox_group}):
|
||||||
|
can specify the false as checked or selected value.
|
||||||
|
[ruby-core:18306], [ruby-core:18307]
|
||||||
|
|
||||||
|
* test/cgi/test_cgi_tag_helper.rb: add a test.
|
||||||
|
|
||||||
Sun Sep 28 23:08:38 2008 Takeyuki Fujioka <xibbar@ruby-lang.org>
|
Sun Sep 28 23:08:38 2008 Takeyuki Fujioka <xibbar@ruby-lang.org>
|
||||||
|
|
||||||
* lib/cgi/html.rb (CGI::HtmlExtension::popup_menu):
|
* lib/cgi/html.rb (CGI::HtmlExtension::popup_menu):
|
||||||
|
|
|
@ -248,12 +248,12 @@ class CGI
|
||||||
if value.kind_of?(String)
|
if value.kind_of?(String)
|
||||||
checkbox(name, value) + value
|
checkbox(name, value) + value
|
||||||
else
|
else
|
||||||
if value[value.size - 1] == true
|
if value[-1] == true || value[-1] == false
|
||||||
checkbox(name, value[0], true) +
|
checkbox(name, value[0], value[-1]) +
|
||||||
value[value.size - 2]
|
value[-2]
|
||||||
else
|
else
|
||||||
checkbox(name, value[0]) +
|
checkbox(name, value[0]) +
|
||||||
value[value.size - 1]
|
value[-1]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
}.join
|
}.join
|
||||||
|
@ -703,12 +703,12 @@ class CGI
|
||||||
if value.kind_of?(String)
|
if value.kind_of?(String)
|
||||||
radio_button(name, value) + value
|
radio_button(name, value) + value
|
||||||
else
|
else
|
||||||
if value[value.size - 1] == true
|
if value[-1] == true || value[-1] == false
|
||||||
radio_button(name, value[0], true) +
|
radio_button(name, value[0], value[-1]) +
|
||||||
value[value.size - 2]
|
value[-2]
|
||||||
else
|
else
|
||||||
radio_button(name, value[0]) +
|
radio_button(name, value[0]) +
|
||||||
value[value.size - 1]
|
value[-1]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
}.join
|
}.join
|
||||||
|
|
|
@ -313,6 +313,17 @@ class CGITagHelperTest < Test::Unit::TestCase
|
||||||
assert_match(/^<INPUT .*VALUE="aa".*>bb<INPUT .*VALUE="cc".*>dd$/,str)
|
assert_match(/^<INPUT .*VALUE="aa".*>bb<INPUT .*VALUE="cc".*>dd$/,str)
|
||||||
assert_match(/^<INPUT .*TYPE="radio".*>bb<INPUT .*TYPE="radio".*>dd$/,str)
|
assert_match(/^<INPUT .*TYPE="radio".*>bb<INPUT .*TYPE="radio".*>dd$/,str)
|
||||||
assert_match(/^<INPUT .*NAME="foo".*>bb<INPUT .*NAME="foo".*>dd$/,str)
|
assert_match(/^<INPUT .*NAME="foo".*>bb<INPUT .*NAME="foo".*>dd$/,str)
|
||||||
|
str=cgi.checkbox_group("foo",["aa","bb"],["cc","dd",true])
|
||||||
|
assert_match(/^<INPUT .*VALUE="aa".*>bb<INPUT .*VALUE="cc".*>dd$/,str)
|
||||||
|
assert_match(/^<INPUT .*TYPE="checkbox".*>bb<INPUT .*TYPE="checkbox".*>dd$/,str)
|
||||||
|
assert_match(/^<INPUT .*NAME="foo".*>bb<INPUT .*NAME="foo".*>dd$/,str)
|
||||||
|
assert_match(/^<INPUT .*>bb<INPUT .*CHECKED.*>dd$/,str)
|
||||||
|
if RUBY_VERSION>="1.9"
|
||||||
|
str=cgi.radio_group("foo",["aa","bb"],["cc","dd",false])
|
||||||
|
assert_match(/^<INPUT .*VALUE="aa".*>bb<INPUT .*VALUE="cc".*>dd$/,str)
|
||||||
|
assert_match(/^<INPUT .*TYPE="radio".*>bb<INPUT .*TYPE="radio".*>dd$/,str)
|
||||||
|
assert_match(/^<INPUT .*NAME="foo".*>bb<INPUT .*NAME="foo".*>dd$/,str)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
=begin
|
=begin
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue