页面重新加载了ajax查询

时间:2018-04-29 06:26:21

标签: jquery ajax wordpress

我有一个小的jquery脚本,它运行来自wordpress插件选项页面的ajax调用,以向数据库添加一些数据。 ajax呼叫工作&可以根据需要将数据插入数据库。

但问题是,一旦插入数据,我就会显示成功消息。页面自动重新加载。如何停止页面重新加载。

以下是我使用的代码。

jQuery(document).ready(function(){

    jQuery("#holiday-submit").click(function(){
        var date = jQuery("#holiday").val();
       var reason =jQuery("#holiday-reason").val();
        jQuery.ajax({
            type: 'POST',
            url: MyAjax.ajaxurl,
            data: {"action": "add_holiday", "holiday":date, "reason" :reason},
            success: 
            function(){
                jQuery("#holiday-status").html( date);
            }
        });
    });
});

这是我在相关管理页面上的内容

<form action="" method="post">

            <input type="date" id="holiday" name="holiday">
            <input type="text" id="holiday-reason" placeholder="Holiday reason">
            <input type="submit" id="holiday-submit">
        </form>
<div id="holiday-status">

</div>

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

只需使用type =&#34;按钮&#34;而不是type =&#34;提交&#34;。 所以你的:

<input type="submit" id="holiday-submit">

变为:

<input type="button" id="holiday-submit" value="submit">

或者

<button id="holiday-submit">Submit</button>

或者按照其他答案

的建议使用e.preventDefault()

答案 1 :(得分:0)

更改为

machines=( machineA machineB machineC ); for machine in $(shuf -e ${machines[@]}); do ssh goldy@$machine 'ls -1 /process/snap/20180418/*' | parallel -j5 "scp goldy@${machine}:{} /data/files/"; if [ $? == 0 ]; then break; fi; done