Php 在函数中调用Ajax时失败

Php 在函数中调用Ajax时失败,php,jquery,ajax,raspbian,Php,Jquery,Ajax,Raspbian,当我在Jquery代码的主体中调用Ajax时,它返回正确的结果,但是当我在函数中调用它时,它失败了。以下是服务器端代码: 在浏览器中看不到任何文本的原因可能是您正在提交表单,并且没有阻止表单提交的默认操作。这将导致发送ajax调用,但随后页面将立即重新加载,并且不会显示ajax调用的结果 要解决此问题,您需要在事件处理程序中调用e.preventDefault() function get_click(e) { e.preventDefault(); $.ajax({

当我在Jquery代码的主体中调用Ajax时,它返回正确的结果,但是当我在函数中调用它时,它失败了。以下是服务器端代码:


在浏览器中看不到任何文本的原因可能是您正在提交表单,并且没有阻止表单提交的默认操作。这将导致发送ajax调用,但随后页面将立即重新加载,并且不会显示ajax调用的结果

要解决此问题,您需要在事件处理程序中调用
e.preventDefault()

function get_click(e) {
    e.preventDefault();
    $.ajax({
        url: "test.php",
        type: "POST",
        data: {what : what, where : where},
        dataType: "json",
        success: function (data) {
            $("#result1").text(JSON.stringify(data));
        },
        error: function (error) {
            alert("ajax error " + JSON.stringify(error));
        }
    });
}
并且,将事件参数添加到HTML中:

   <form onsubmit="get_click(event)">
        <input type="submit">
   </form>


工作演示:。如果从演示中删除
e.preventDefault()
,则表单将提交。

我看到一些问题需要解决。1) 您正在链接jquery两次。2) 您的jquery链接之一位于html开头上方。是的!非常感谢,朋友。