JS如何在网页中POST任意内容并跳转(完)

之前是用jQuery的post()方法实现向服务器POST数据。
现在新需求需要呈现服务器返回的HTML页面。这个呈现是类似于普通form提交后跳转的过程。

引入代码

首先引入JQuery

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

function StandardPost(url,args) 
   {
       var form = $("<form method='post'></form>"),
           input;
       form.attr({"action":url});
       $.each(args,function(key,value){

       	alert(key);
       	alert(value);
           input = $("<input type='hidden'>");
           input.attr({"name":key});
           input.val(value);
           form.append(input);
       });
       $(document.body).append(form);
       form.submit();
   }


	//var args = { shopid: 'one', b: 'two', c: 'three', d: 'four', e: 'five' };
	var args = { dosubmit: "dosubmit","shopid[0]": "264"};

	StandardPost(url,args)

可能出现的问题

  • 错误Form submission canceled because the form is not connected
    1
    
    chrome56版本以后修复form提交的bug,form = $('<form></form>')创建好后,要$(document.body).append(form);然后form.submit();
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用 Flask 的 redirect 和 url_for 函数来实现以 POST 方式跳转网页并传递参数。具体实现方法可以参考以下代码: ```python from flask import Flask, redirect, url_for, request app = Flask(__name__) @app.route('/login', methods=['POST']) def login(): username = request.form['username'] password = request.form['password'] # 验证用户名和密码 if username == 'admin' and password == '123456': # 登录成功,跳转到首页并传递参数 return redirect(url_for('index', username=username)) else: # 登录失败,返回登录页面 return redirect(url_for('login_page')) @app.route('/') def index(): username = request.args.get('username') return f'欢迎您,{username}!' @app.route('/login') def login_page(): return ''' <form method="post" action="/login"> <input type="text" name="username" placeholder="用户名"><br> <input type="password" name="password" placeholder="密码"><br> <button type="submit">登录</button> </form> ''' if __name__ == '__main__': app.run() ``` 在上面的代码,我们定义了一个 `/login` 路由,用于处理用户登录请求。当用户提交登录表单时,我们会获取表单的用户名和密码,进行验证。如果验证通过,我们就使用 `redirect` 函数跳转到首页,并使用 `url_for` 函数生成首页的 URL,并在 URL 传递用户名参数。如果验证失败,我们就使用 `redirect` 函数跳转回登录页面。 在首页的路由,我们使用 `request.args.get` 方法获取 URL 传递的参数,并在页面显示欢迎消息。 在登录页面的路由,我们定义了一个简单的 HTML 表单,用于让用户输入用户名和密码,并提交登录请求。注意,我们在表单指定了 `method="post"`,表示这是一个 POST 请求。当用户点击登录按钮时,表单数据会被提交到 `/login` 路由
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值