我在sweetalert2中动态创建了文本框,如下所示:
swal({
title: 'Enter Info',
showCancelButton: true,
html: "<table>" +
"<tr>" +
"<td>name</td>" +
"<td><input type='text' id='name'/></td>" +
"</tr>"
"<tr>" +
"<td>email</td>" +
"<td><input type='text' id='email'/></td>" +
"</tr>"
"</table>"
}).then(function(){
// ajax
});
jQuery函数用于监听文本框更改事件。
$(document).ready(function () {
<script type="text/javascript">
$('#name').on('change', function(e) {
console.log($(this).val());
});
</script>
});
但是在更改sweetalert2中的文本框值时,不会触发事件。 jQuery已正确加载,并且可以在sweetalert2模型之外的其他文本框上运行。我还尝试在上面<script>...</script>
</table>
之后添加html:
,但仍然没有运气。有人可以帮帮我吗?任何意见都将不胜感激。
答案 0 :(得分:5)
将Comment <- c("(apple (a) 100)","(orange 50)")
更改为$('#name').on('change', function(e) {
答案 1 :(得分:2)
这是因为您正在使用
$('#name').on('change', function(e) {}); // this works for static dom
$(document).on('change','#name', function(e) {}); // this works for static as well as content dynamically added in dom.