Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
e9aa7ecd
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,发现更多精彩内容 >>
提交
e9aa7ecd
编写于
4月 01, 2018
作者:
M
Mathieu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Extract the confirm call in its own, overridable method in rails_ujs
上级
8d93107b
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
39 addition
and
1 deletion
+39
-1
actionview/CHANGELOG.md
actionview/CHANGELOG.md
+8
-0
actionview/app/assets/javascripts/rails-ujs/features/confirm.coffee
.../app/assets/javascripts/rails-ujs/features/confirm.coffee
+5
-1
actionview/test/ujs/public/test/data-confirm.js
actionview/test/ujs/public/test/data-confirm.js
+26
-0
未找到文件。
actionview/CHANGELOG.md
浏览文件 @
e9aa7ecd
*
Extract the
`confirm`
call in its own, overridable method in
`rails_ujs`
.
Example :
Rails.confirm = function(message, element) {
return (my_bootstrap_modal_confirm(message));
}
*Mathieu Mahé*
*
Enable select tag helper to mark
`prompt`
option as
`selected`
and/or
`disabled`
for
`required`
field. Example:
...
...
actionview/app/assets/javascripts/rails-ujs/features/confirm.coffee
浏览文件 @
e9aa7ecd
...
...
@@ -5,6 +5,10 @@
Rails
.
handleConfirm
=
(
e
)
->
stopEverything
(
e
)
unless
allowAction
(
this
)
# Default confirm dialog, may be overridden with custom confirm dialog in Rails.confirm
Rails
.
confirm
=
(
message
,
element
)
->
confirm
(
message
)
# For 'data-confirm' attribute:
# - Fires `confirm` event
# - Shows the confirmation dialog
...
...
@@ -20,7 +24,7 @@ allowAction = (element) ->
answer
=
false
if
fire
(
element
,
'confirm'
)
try
answer
=
confirm
(
message
)
try
answer
=
Rails
.
confirm
(
message
,
element
)
callback
=
fire
(
element
,
'confirm:complete'
,
[
answer
])
answer
and
callback
actionview/test/ujs/public/test/data-confirm.js
浏览文件 @
e9aa7ecd
...
...
@@ -314,3 +314,29 @@ asyncTest('clicking on the children of a disabled button should not trigger a co
start
()
},
50
)
})
asyncTest
(
'
clicking on a link with data-confirm attribute with custom confirm handler. Confirm yes.
'
,
7
,
function
()
{
var
message
,
element
// redefine confirm function so we can make sure it's not called
window
.
confirm
=
function
(
msg
)
{
ok
(
false
,
'
confirm dialog should not be called
'
)
}
// custom auto-confirm:
Rails
.
confirm
=
function
(
msg
,
elem
)
{
message
=
msg
;
element
=
elem
;
return
true
}
$
(
'
a[data-confirm]
'
)
.
bindNative
(
'
confirm:complete
'
,
function
(
e
,
data
)
{
App
.
assertCallbackInvoked
(
'
confirm:complete
'
)
ok
(
data
==
true
,
'
confirm:complete passes in confirm answer (true)
'
)
})
.
bindNative
(
'
ajax:success
'
,
function
(
e
,
data
,
status
,
xhr
)
{
App
.
assertCallbackInvoked
(
'
ajax:success
'
)
App
.
assertRequestPath
(
data
,
'
/echo
'
)
App
.
assertGetRequest
(
data
)
equal
(
message
,
'
Are you absolutely sure?
'
)
equal
(
element
,
$
(
'
a[data-confirm]
'
).
get
(
0
))
start
()
})
.
triggerNative
(
'
click
'
)
})
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录