停止页面加载在笨的jQuery + AJAX书签功能(stop page load in codei

2019-10-31 16:35发布

我工作的一个书签功能(笨,jQuery的,AJAX)。 下面是形式和jQuery代码的HTML。

这里是发生了什么:

  • 形式的数据提交给数据库
  • 页面重新加载
  • 我没有得到成功的警报
  • 如果我使用e.preventDefault()或返回false,页面没有加载,我获得成功的警报,但被传递到数据库中的数据为0。

HTML表单

<?php echo form_open('bookmarks/addBookmark'); ?>
<?php echo form_hidden('bookn', $bname); ?>
<?php echo form_hidden('booki', $this->uri->segment(4, 0)); ?>
<button class="bb_button">Bookmark</button>
<?php echo form_close(); ?>

jQuery的

$('.bb_button').click(function() { 
            $.ajax({
                url: 'bookmarks/addBookmark',
                type: 'POST',
                success: function (result) {
                    alert("Your bookmark has been added.");
                }                                         
            }); 
       //return false<--this is where I used it
    });

Answer 1:

你不传递任何数据。

尝试

$('.bb_button').click(function(e) { 
    $.ajax({
        url: 'bookmarks/addBookmark',
        type: 'POST',
        data: { bookn: $("[name='bookn']").val()​, booki: $("[name='booki']").val()​ },
        success: function (result) {
            alert("Your bookmark has been added.");
        }                                         
    }); 
    e.preventDefault();
});


文章来源: stop page load in codeigniter jquery + ajax bookmark function