Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >解决iframe参数过长无法加载问题小记

解决iframe参数过长无法加载问题小记

作者头像
全栈程序员站长
发布于 2022-09-14 02:58:26
发布于 2022-09-14 02:58:26
2K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

项目中用到了iframe,传参的时候使用的src属性,默认采用的get方式,此种方式在参数较长的时候就会报错(404无法找到资源),为了解决这种情况,改为采用post方式提交。解决方法:结合form表单,利用表单的post请求方式达到目的。

实现方式 增加一个form表单的标签,method设置为post,target设置一个标识,假如target=”target1” 在iframe设置name属性,name需要与target一致 name = “target1”

发送请求时通过发送form submit请求来使用post方式 以下代码用于定义iframe和相关form表单。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<form id="form1" action="" target="target1" method="post">
        <input name="Year" type="hidden" value="" />
        <input name="CommentUnitCode" type="hidden" value="" />
        <input name="CommentUnitType" type="hidden" value="" />
        <input name="dataType" type="hidden" value="" />
</form>
<iframe id="iframe1" name="target1"  src="" frameborder="0"></iframe>

以下代码用于定义form表单的提交对应的action方法和参数,这样就以post方式将参数传至后台,不必再担心参数过长的问题。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var frame1 = document.getElementById('iframe1');
var url1 = "/DataDisplay/ShowRangeDataPage";
$('#form1 input[name=Year]').val(year);
$('#form1 input[name=CommentUnitCode]').val(CommentUnitCode);
$('#form1 input[name=CommentUnitType]').val(CommentUnitType);
$('#form1 input[name=dataType]').val(dataparams.dataType);
$('#form1').attr('action', url1);
$('#form1').submit();

表单提交后,在后台获取并保存参数值。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[HttpPost]
public ActionResult ShowRangeDataPage(ReportDataListRequest request)
{
	ViewBag.Year = request.Year;
	ViewBag.CommentElementValue = request.CommentElementValue;
	ViewBag.CommentUnitValue = request.CommentUnitValue;
	ViewBag.CommentUnitCode = request.CommentUnitCode;
	ViewBag.CommentUnitType = request.CommentUnitType;
	ViewBag.dataType = request.dataType;
	return View();
}     

前端ShowRangeDataPage页面调用post传的参数。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$.ajax({
		url: postUrl,
		type: 'post',
		dataType: 'json',
		data: {
			Year: Year,
			CommentUnitCode: '@ViewBag.CommentUnitCode',
			CommentUnitType: '@ViewBag.CommentUnitType',
			dataType: '@ViewBag.dataType'
		},
		success: function (result) {
			var data = eval(result.PieDataList);  
			data.sort(function (a, b) {
				return b.value - a.value;
			});
			clickProvice(data);
		},
		error:function (message) {
			console.log(message);
		}
});        

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/157969.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
excel导出使用get请求参数过长问题
excel导出功能时,使用的是window.location.href=url也就是get请求。当传入参数过长的时候就报了414,地址过长的错误。
用户1518699
2018/12/14
2.2K0
excel导出使用get请求参数过长问题
request.getParameter(“xxx”)的参数的取值
<form name="form" method="post" action="checkUser">  
Twcat_tree
2022/11/30
7120
JAVASCRIPT 上传文件的几种方式「建议收藏」
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/03
5.2K0
34.Ajax
优先级 如果发送的是【普通数据】 jQuery XMLHttpRequest iframe 如果发送的是【文件】 iframe jQuery(FormData) XMLHttpRequest(FormData) 原生Ajax Ajax主要就是使用 【XmlHttpRequest】对象来完成请求的操作,该对象在主流浏览器中均存在(除早起的IE),Ajax首次出现IE5.5中存在(ActiveX控件) 1、XmlHttpRequest对象介绍 XmlHttpRequest对象的主要方法: a. void op
zhang_derek
2018/04/11
2K0
Django之json、Ajax简介及实例介绍
JSON 格式于2001年由 Douglas Crockford 提出,目的就是取代繁琐笨重的 XML 格式。
菲宇
2019/06/13
6.9K0
Django之json、Ajax简介及实例介绍
Jquery 常见案例
版权声明:本文为博主原创文章,未经博主允许不得转载。
DencyCheng
2018/11/05
7.6K0
利用iframe+from表单实现跨域上传文件
一、需要的材料 客户端需要一个HTML页面A其中包含一个iframe和一个form表单,一个页面B(我称之为客户端代理)里面包含对返回参数的处理; 服务端需要一个asp.net的一般处理程序用来处理上
用户1719978
2018/07/05
2.2K0
Django---Ajax
Ajax准备知识:json 什么是json? 定义: JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。 它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 讲json对象,不得不提到JS对象: 合格的json对象:
用户1214487
2018/01/24
5K0
Django---Ajax
使用ajax方法实现form表单的提交
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载。 写在前面的话 在使用form表单的时候,一旦点击提交触发submit事件,一般会使得页面跳转,页面间的跳转等行为的控制权往往在后端,后端会控制页面的跳转及数据传递,但是在某些时候不希望页面跳转,或者说想要将控制权放在前端,通过js来操作页面的跳转或者数据变化。 一般这种异步的操作,我们都会想到ajax方式,因此在实现了功能后就整理了这篇文章,通过ajax方法实现for
程序员十三
2018/03/15
3.5K0
ASP.NET MVC5中View-Controller间数据的传递
使用ASP.NET MVC做开发时,经常需要在页面(View)和控制器(Controller)之间传递数据,那么都有哪些数据传递的方式呢?
雪飞鸿
2018/09/05
2.9K0
ASP.NET MVC5中View-Controller间数据的传递
form表单提交的几种方式
完成后启动项目 并访问http://localhost:8080/query.html 输入用户名和密码
全栈程序员站长
2022/07/21
7.1K0
form表单提交的几种方式
ajax全套
对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上。
菲宇
2019/06/13
3.2K0
ajax全套
easyui+ssm+shiro做的登录注册修改密码审核用户(四)
easyui+ssm+shiro做的登录注册修改密码审核用户(四)
Java架构师必看
2021/04/13
2K0
easyui+ssm+shiro做的登录注册修改密码审核用户(四)
php与Ajax实例
Ajax是使用客户端脚本与Web服务器交换数据的Web应用开发方法。Web页面不用打断交互流程进行重新加裁,就可以动态地更新。使用Ajax,用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的Web用户界面。
Java架构师必看
2021/03/22
3.3K0
MVC入门
V:view    通常视图是依据模型数据创建的    应用程序中处理数据显示的部分
wfaceboss
2019/04/08
9850
MVC入门
JQuery-命令速查-CheatSheet
http://stackoverflow.com/questions/31379409/form-submission-causing-maximum-call-stack-size-exceeded
szhshp
2022/09/21
10K0
javaWeb传收参数方式总结
有时候,我真会被传参搞得头晕,这样传要怎么接收,那样传又要怎么接收? get可以json吗?什么是json方式提交?等等问题,已困扰我许久 所以,在此想做个总结,整理一下思绪,不再为传收参烦恼!如有错
KEN DO EVERTHING
2019/01/17
2.2K0
ASP.NET MVC 4.0 CKEditor jquery 文章管理 图片上传 解决方案
文章修改,新增业务的C#代码 [HttpPost] [ValidateInput(false)] public ActionResult AddNew(FormCollection values) { var db = new ddrDBEntities(); XinWen obj = new XinWen(); if (!string.IsNullOrEmpty(Request["id"
liulun
2022/05/09
7520
简单系统后台页面开发分享【2020网页综合笔记01】
简介 INTRODUCTION必须要掌握的内容:1.建立本地站点和站点管理 2.标签html head title body p table tr td h a font hr img 3.元素添加与修饰:文本、水平线、特殊字符、图像、flash动画 4.表格布局、合并、拆分 5.框架布局 6.层与时间轴的应用 7.表单的制作 8.css样式的使用
刘金玉编程
2020/12/02
5910
简单系统后台页面开发分享【2020网页综合笔记01】
.NET MVC第四章、模型绑定获取表单数据
表单提交图片,必须是post提交,并且添加enctype="multipart/form-data"上传图片
红目香薰
2022/11/30
1.3K0
.NET MVC第四章、模型绑定获取表单数据
相关推荐
excel导出使用get请求参数过长问题
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档