Javascript 如何使用ajax使用post并定位其url

Javascript 如何使用ajax使用post并定位其url,javascript,php,jquery,Javascript,Php,Jquery,我想要达到的目标: 我需要使用POST方法,然后在成功后,它将与POST数据一起定位到ajax的另一个url 这就是我到目前为止所做的: 问题: 成功后,view_工资单无法收集我传输的帖子数据。我知道我做错了。这就是为什么我要寻求帮助,以使这一权利 提前感谢。您需要做的是在成功回调中发布动态表单。 我在我的一个项目中也有类似的需求,为此我创建了一个类似于下面所示的方法 在这种方法中,您需要传递URL、windows选项和参数,这些参数是您的数据对象,name是窗口名称,如果您希望在同一窗口中打

我想要达到的目标: 我需要使用POST方法,然后在成功后,它将与POST数据一起定位到ajax的另一个url

这就是我到目前为止所做的:

问题: 成功后,view_工资单无法收集我传输的帖子数据。我知道我做错了。这就是为什么我要寻求帮助,以使这一权利


提前感谢。

您需要做的是在成功回调中发布动态表单。 我在我的一个项目中也有类似的需求,为此我创建了一个类似于下面所示的方法

在这种方法中,您需要传递URL、windows选项和参数,这些参数是您的数据对象,name是窗口名称,如果您希望在同一窗口中打开,则可以传递name param中的空白值,而不打开新窗口,并省略window.open语句。您可以根据自己的要求进行修改

function submitDynamicForm(url, windowoption, name, params)
{
    var form = document.createElement("form");
    form.setAttribute("method", "post");
    form.setAttribute("action", url);
    form.setAttribute("target", name);
    for (var key in params) {
        if (params.hasOwnProperty(key)) {
            var input = document.createElement('input');
            input.type = 'hidden';
            input.name = key;
            input.value = params[key];
            form.appendChild(input);
        }
    }
    document.body.appendChild(form);
    window.open("", name, windowoption);
    form.submit();
    document.body.removeChild(form);
}

“提交”按钮提交一个加载新页面的文件-您需要防止此默认操作—您如何将AJAX发送到同一个端点,以便稍后重定向用户?使用表单而不是ajax如果您使用的是ajax,同时尝试在操作后刷新页面,则根本不使用ajax功能。只需编写一个函数并调用它即可更新页面,而无需服务器重定向。@JaromandaX谢谢。我只是用了form方法。我正在检查是否可以使用ajax。@Borjante谢谢。将使用表单而不是ajaxHi。也谢谢你。我刚刚用POST创建了一个简单的表单。这将是未来的参考,也为那些谁是我的问题的经验。
function submitDynamicForm(url, windowoption, name, params)
{
    var form = document.createElement("form");
    form.setAttribute("method", "post");
    form.setAttribute("action", url);
    form.setAttribute("target", name);
    for (var key in params) {
        if (params.hasOwnProperty(key)) {
            var input = document.createElement('input');
            input.type = 'hidden';
            input.name = key;
            input.value = params[key];
            form.appendChild(input);
        }
    }
    document.body.appendChild(form);
    window.open("", name, windowoption);
    form.submit();
    document.body.removeChild(form);
}