Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
165d93b2
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
165d93b2
编写于
3月 31, 2014
作者:
G
Guillermo Iguaran
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #14539 from lparedes/master
Do not overwrite selected and disabled attributes
上级
08c8ce6a
95692c61
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
23 addition
and
3 deletion
+23
-3
actionview/lib/action_view/helpers/form_options_helper.rb
actionview/lib/action_view/helpers/form_options_helper.rb
+2
-2
actionview/test/template/form_options_helper_test.rb
actionview/test/template/form_options_helper_test.rb
+21
-1
未找到文件。
actionview/lib/action_view/helpers/form_options_helper.rb
浏览文件 @
165d93b2
...
...
@@ -360,8 +360,8 @@ def options_for_select(container, selected = nil)
html_attributes
=
option_html_attributes
(
element
)
text
,
value
=
option_text_and_value
(
element
).
map
{
|
item
|
item
.
to_s
}
html_attributes
[
:selected
]
=
option_value_selected?
(
value
,
selected
)
html_attributes
[
:disabled
]
=
disabled
&&
option_value_selected?
(
value
,
disabled
)
html_attributes
[
:selected
]
||
=
option_value_selected?
(
value
,
selected
)
html_attributes
[
:disabled
]
||
=
disabled
&&
option_value_selected?
(
value
,
disabled
)
html_attributes
[
:value
]
=
value
content_tag_string
(
:option
,
text
,
html_attributes
)
...
...
actionview/test/template/form_options_helper_test.rb
浏览文件 @
165d93b2
...
...
@@ -119,6 +119,26 @@ def test_array_options_for_select
)
end
def
test_array_options_for_select_with_custom_defined_selected
assert_dom_equal
(
"<option selected=
\"
selected
\"
type=
\"
Coach
\"
value=
\"
1
\"
>Richard Bandler</option>
\n
<option type=
\"
Coachee
\"
value=
\"
1
\"
>Richard Bandler</option>"
,
options_for_select
([
[
'Richard Bandler'
,
1
,
{
type:
'Coach'
,
selected:
'selected'
}],
[
'Richard Bandler'
,
1
,
{
type:
'Coachee'
}]
])
)
end
def
test_array_options_for_select_with_custom_defined_disabled
assert_dom_equal
(
"<option disabled=
\"
disabled
\"
type=
\"
Coach
\"
value=
\"
1
\"
>Richard Bandler</option>
\n
<option type=
\"
Coachee
\"
value=
\"
1
\"
>Richard Bandler</option>"
,
options_for_select
([
[
'Richard Bandler'
,
1
,
{
type:
'Coach'
,
disabled:
'disabled'
}],
[
'Richard Bandler'
,
1
,
{
type:
'Coachee'
}]
])
)
end
def
test_array_options_for_select_with_selection
assert_dom_equal
(
"<option value=
\"
Denmark
\"
>Denmark</option>
\n
<option value=
\"
<USA>
\"
selected=
\"
selected
\"
><USA></option>
\n
<option value=
\"
Sweden
\"
>Sweden</option>"
,
...
...
@@ -813,7 +833,7 @@ def test_select_with_prompt_and_selected_value
select
(
"post"
,
"category"
,
%w( one two )
,
:selected
=>
'two'
,
:prompt
=>
true
)
)
end
def
test_select_with_disabled_array
@post
=
Post
.
new
@post
.
category
=
"<mus>"
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录