jQuery不调用php
出于某种原因,jQuery没有加载我的php文件。点击按钮,页面就会刷新。我已经验证了jQuery是否正常工作,以及单击功能是否正常工作。当它到达jQuery不调用php,php,ajax,jquery,Php,Ajax,Jquery,出于某种原因,jQuery没有加载我的php文件。点击按钮,页面就会刷新。我已经验证了jQuery是否正常工作,以及单击功能是否正常工作。当它到达$.post时,它似乎不会调用该文件并执行暂停并回显结果。该目录对于php文件是正确的。我不知所措。有什么想法吗 // HTML Code <input id="doit" class="medium blue button" type="submit" name="doit" value="Sign in"> //jQuery
$.post
时,它似乎不会调用该文件并执行暂停并回显结果。该目录对于php文件是正确的。我不知所措。有什么想法吗
// HTML Code
<input id="doit" class="medium blue button" type="submit" name="doit" value="Sign in">
//jQuery code:
$('#doit').click(function(){
$('#fullscreen').show();
$.post('./delete-misc/test-ajax-code.php', function(data){
$('#fullscreen').hide();
alert(data);
})
});
// Php code (test-ajax-code.php)
<?php
sleep(10);
echo "Done";
?>
//HTML代码
//jQuery代码:
$('#doit')。单击(函数(){
$('全屏').show();
$.post('./delete misc/test ajax code.php',函数(数据){
$(“#全屏”).hide();
警报(数据);
})
});
//Php代码(test ajax code.Php)
尝试更改为类型按钮:
<input id="doit" class="medium blue button" type="button" name="doit" value="Sign in">
更改按钮类型。
因此,与此相反:
<input id="doit" ... type="submit" ... />
为什么??在jquery事件中返回false
会“取消”默认行为,因此表单不会被提交
希望这有帮助。干杯你刚刚忘记了
after结束您的$.post
;)
试试这个,它的工作原理是:
$('#doit').click(function(){
$.post('./delete-misc/test-ajax-code.php', function(data){
alert(data);
});
});
您需要在提交处理程序中返回
false
。如果您不这样做,表单将在处理程序返回后按正常方式提交 删除“提交”按钮的“名称”属性,然后重试。不久前,我也遇到过类似的问题,删除name属性就是一个窍门。(当我通过jQuery提交发布的数据时,我不需要name属性)
我仍然想知道为什么它在那时起作用 尝试删除URL开头的点
$.post('/delete-misc/test-ajax-code.php', ...
由于缺乏经验,我无法详细解释URL路径中的一个点是如何工作的,但我会将其作为一个社区wiki,以便有人解释它
编辑:我问了一个关于这个主题的问题,答案很好:将其更改为按钮可以防止页面刷新,但仍然不会加载test-ajax-code.php文件。现在的情况是,它只显示全屏div并挂起,从不返回php回音,然后隐藏全屏。因此,您还有另一个问题。您的“警报”是否执行?否,警报未执行。请尝试
$.post('/delete misc/test ajax code.php',…
开头没有点。它是否显示警报(数据)
。尝试在之前添加return false;
)
阻止表单提交。@bazmegakapa-成功了!我看到的所有文件都说是这样写的。删除它有什么逻辑原因可以解决这个问题吗?@Jason我将添加它作为答案:)@bazmegakapa-太好了,标记为答案。再次感谢!
$('#doit').click(function(){
$.post('./delete-misc/test-ajax-code.php', function(data){
alert(data);
});
});
$.post('/delete-misc/test-ajax-code.php', ...