【发布时间】:2018-09-26 00:01:38
【问题描述】:
我有这个jQuery 代码:
function action(action){
event.preventDefault();
var products = $("#check-list input:checkbox:checked").map(function(){
return $(this).val();
}).get();
var string = JSON.stringify(products);
var table = $('#table').val();
if(products.length != '0' || action === 'old-all'){
$.ajax({
type: 'post',
url: 'app/toolbar.php',
data: {action:action, table:table, ids:string},
success:function(data){
localStorage.setItem('notify', data);
location.reload();
},
});
} else{
notify('You must choose an element first');
}
}
我正在使用jQuery 3.3.1。
如果我点击一个按钮而不选中复选框,我应该得到You must choose an element first,但如果我选择一个元素,toolbar.php 应该运行并执行它必须完成的事情(根据按下哪个按钮:
<button class="grey-btn" onClick="action('delete')">Delete</button>
<button class="grey-btn" onClick="action('update')">Update</button>
它完美地适用于Chrome,但它不适用于Firefox。我正在尝试一些我在其他类似的“适用于 chrome 但不适用于 firefox”问题上找到的答案,但它们都没有奏效:(
【问题讨论】:
-
事件未定义
-
您能分享一下您在控制台中遇到的异常吗?
-
@epascarello 你能帮我定义一下吗? X_X
-
@BrankVictoria 在 Firefox 中控制台是空的,没有消息没有任何东西:-s
-
@BrankVictoria 实际上我再次检查,控制台说:ReferenceError: event is not defined
标签: javascript jquery ajax cross-browser