zoukankan      html  css  js  c++  java
  • AJAX扩展-POST传递参数并跳转页面

    拓展的代码:

    这段代码的原理是创建一个表单,所有args都创建一个隐藏的input,用post方法把这些参数传递过去

    注意form表单一定要加载到页面中,即下面代码中标红的部分,不然参数是无法被传递的(因为这个被坑了)

        $.extend({
            StandardPost:function(url,args){
                var form = $("<form method='post'></form>"),
                    input;
            //jquery方式 $(document.body).append(form);
            //js原生添加
            //document.body.appendChild(form);
    form.attr({
    "action":url}); $.each(args,function(key,value){ input = $("<input type='hidden'>"); input.attr({"name":key}); input.val(value); form.append(input); }); console.log(args); form.submit(); } });

    简单调用:

    $.StandardPost('url/path/req',{arg0:'arg0',arg1:'arg1'}); 

    获取url链接传递的参数

        var Request = new Object();
        Request = GetRequest();
        function GetRequest() {
            var url = location.search; //获取url中含"?"符后的字串
            var theRequest = new Object();
            if (url.indexOf("?") != -1) {
                var str = url.substr(1);
                strs = str.split("&");
                for (var i = 0; i < strs.length; i++) {
                    theRequest[strs[i].split("=")[0]] = strs[i].split("=")[1];
                }
            }
            console.log(theRequest)
            return theRequest;
        }

    这是用post方法跳转页面,即跳转的页面是不带后面的参数的

    当然也可以直接用get方法,直接链接跳转携带返回参数

    比如:

    window.location.href = "/?go="+Request["go"]+"&arg0="+Request["arg0"]+"&arg1="+Request["arg1"];
  • 相关阅读:
    Eclipse 3.7 安装Maven插件时报错:requires 'bundle org.slf4j.api 1.6.2' but it could not be found
    Windows下IIS+PHP5.3.x ZendGuardLoader的配置方法
    IIS7.x运行PHP
    顺手的Linux发行版及其工具推荐
    nc 简单的使用
    nginx日志简单分析工具
    批量转换cue文件编码
    Linux Tweak:交换 Caps_Lock 与 Control_R
    Word 2013测试
    start running 开始跑步减肥
  • 原文地址:https://www.cnblogs.com/calamus/p/7886089.html
Copyright © 2011-2022 走看看