我试图在单击按钮时打开引导程序模式,但似乎我的代码未运行。这是我的代码段:
<button type="button" class="btn btn-xs btn-default" onclick="openViewUserModal(<?= $users['userid']; ?>); return false;">
<span class="glyphicon glyphicon-eye-open"></span>
</button>
function openViewUserModal(id) {
var data = {
"id": id
};
jQuery.ajax({
url: "includes/viewUser.php",
method: "POST",
data: data,
success: function(data) {
jQuery('body').append(data);
jQuery('#viewUserModal').modal({
backdrop: 'static',
keyboard: false,
show: true
});
}
});
}
单击按钮不会引起响应。我在做什么错了?
答案 0 :(得分:0)
这应该起作用,标记echo语句。我认为这是一个错字。
<button type="button" class="btn btn-xs btn-default" onclick="openViewUserModal('<?php echo $users['userid']; ?>');">
<span class="glyphicon glyphicon-eye-open"></span>
</button>
答案 1 :(得分:0)
假设<?= $users['userid']; ?>
的输出是一个字符串,那么您需要将其用引号引起来:
onclick="openViewUserModal('<?= $users['userid']; ?>'); return false;"
话虽这么说,使用内联事件处理程序是一种非常过时的方法,应避免这种情况。改用不显眼的事件处理程序。您可以通过data
属性向该事件处理程序提供参数,如下所示:
$('.btn').click(function() {
$.ajax({
url: "includes/viewUser.php",
method: "POST",
data: {
"id": $(this).data('userid')
},
success: function(data) {
$('body').append(data);
$('#viewUserModal').modal({
backdrop: 'static',
keyboard: false,
show: true
});
}
});
});
<button type="button" class="btn btn-xs btn-default" data-userid="<?= $users['userid']; ?>">
<span class="glyphicon glyphicon-eye-open"></span>
</button>