nik*_*aft 2 javascript jquery sweetalert sweetalert2
我正在使用 SweetAlert2 javascript 库来显示弹出窗口。SweetAlert2 是 SweetAlert 的一个分支,不再维护。SweetAlert2 允许我添加这样的单选按钮
// inputOptions can be an object or Promise
var inputOptions = new Promise(function(resolve) {
resolve({
'#ff0000': 'Red',
'#00ff00': 'Green',
'#0000ff': 'Blue'
});
});
swal({
title: 'Select color',
input: 'radio',
inputOptions: inputOptions,
inputValidator: function(result) {
return new Promise(function(resolve, reject) {
if (result) {
resolve();
} else {
reject('You need to select something!');
}
});
}
}).then(function(result) {
swal({
type: 'success',
html: 'You selected: ' + result
});
})
Run Code Online (Sandbox Code Playgroud)
SweetAlert2 为无线电输入指定“swal2-radio”名称,如下所示
<input id="swal2-radio-1" type="radio" name="swal2-radio" value="3">
Run Code Online (Sandbox Code Playgroud)
所以我尝试监听 swal2-radio 的任何点击,如下所示:
$("input[name='swal2-radio']").on("click", function() {
var id = $('input[name=swal2-radio]:checked').val();
console.log('id: ' + id);
});
Run Code Online (Sandbox Code Playgroud)
它应该打印到控制台,以便我知道它有效。
这是我到目前为止的代码: https://jsfiddle.net/ayx0fkz3/
我是否做错了什么,或者由于 SweetAlert2 的工作方式而无法正常工作?
您必须通过委托事件与整个文档绑定来绑定事件。
$(document).on("click",".swal2-container input[name='swal2-radio']", function() {
var id = $('input[name=swal2-radio]:checked').val();
console.log('id: ' + id);
});
Run Code Online (Sandbox Code Playgroud)
检查小提琴链接
| 归档时间: |
|
| 查看次数: |
8878 次 |
| 最近记录: |