Javascript jquery/ajax代码don';不能在firefox上使用,但在其他浏览器上可以使用
我的问题是,我创建了一个输入文本和一个按钮,如下图所示: 该系统非常简单,您输入一个数字,然后使用ajax在数据库中点击go to set。 我在Chrome、InternetExplorer9、Edge和Firefox(51.0.1(32位))上试过这段代码,但在Firefox上,这段代码似乎不起作用。 有什么问题? 以下是javascript代码:Javascript jquery/ajax代码don';不能在firefox上使用,但在其他浏览器上可以使用,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我的问题是,我创建了一个输入文本和一个按钮,如下图所示: 该系统非常简单,您输入一个数字,然后使用ajax在数据库中点击go to set。 我在Chrome、InternetExplorer9、Edge和Firefox(51.0.1(32位))上试过这段代码,但在Firefox上,这段代码似乎不起作用。 有什么问题? 以下是javascript代码: <script type="text/javascript"> $(documen
<script type="text/javascript">
$(document).ready(function () {
$("#set_image_pos_btn<?php echo $image->id; ?>").click(function () {
event.preventDefault();
var image_id = <?php echo $image->id; ?>;
var image_position = $("#image_position_value<?php echo $image->id; ?>").val();
$.ajax({
url: '<?php echo base_url("image/pozitie"); ?>',
data: {id: image_id, position: image_position},
type: 'POST',
success: function (data) {
$("#image_position_value<?php echo $image->id; ?>").html(data);
}
});
});
});
</script>
将e参数添加到click事件中,它就会工作
click(function (e) {
另外:您应该关心错误处理
var jqxhr = $.ajax( "example.php" )
.done(function() {
alert( "success" );
})
.fail(function() {
alert( "error" );
})
.always(function() {
alert( "complete" );
});
检查Firefox的控制台是否有错误。可能是安全问题。Firefox不提供
事件
作为全局变量。它作为参数传递给事件处理程序函数。使用jQuery时,无论如何都不应该使用全局事件
(除非您确实有充分的理由)。ReferenceError:event未在firefox中定义m.event.dispatch m.event.add/r.handletry console.log以查看是否触发了click事件。另外,根据您正在使用的jQuery版本,您可以尝试使用.on('click',function(e){…});我认为它在jQuery2之后就可以工作了,但我不确定。如果Firefox中没有触发单击事件,请尝试。
var jqxhr = $.ajax( "example.php" )
.done(function() {
alert( "success" );
})
.fail(function() {
alert( "error" );
})
.always(function() {
alert( "complete" );
});