`
skydove
  • 浏览: 19334 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

jquery跨域提交及form序列号乱码问题解决

 
阅读更多

    jquery跨域异步提交的时候,由于安全限制,会无法提交,可以使用jsonp的格式提交。

 var params = $("#" + form_id).serialize(); // form序列化,转化后形成a=a1&b=b1这样的形式
 params = decodeURIComponent(params, true); // 解码序列化
 params = encodeURI(encodeURI(params));	// 再编码,到后台用 pa = java.net.URLDecoder.decode(pa , "UTF-8");这样便可以解决乱码问题
 
$.getJSON($("#" + form_id).attr("action") + '?callback=?', params, 
	function (result) {
	if (result.textStatus == "success" && result.isSuccess == "true") {
		alert("提交成功!");
		window.location.reload();
	} else {
	 	alert(result.msg);
	}
});

 其他使用技巧:

serializeArray()方法

  格式:var jsonData = $("#formID").serializeArray();

  功能:将页面表单序列化成一个JSON结构的对象。注意不是JSON字符串。

  比如,[{"name":"lihui"},{...}] 获取数据为 jsonData[0].name

$.param()方法,可以把json格式数据序列化成字符串形式

      varobj={a:1,b:2}

      vars=$.param(obj);

  会形成a=1&b=2的形式

      自定义方法:

$.fn.serializeObject = function()  
{  
   var o = {};  
   var a = this.serializeArray();  
   $.each(a, function() {  
       if (o[this.name]) {  
           if (!o[this.name].push) {  
               o[this.name] = [o[this.name]];  
           }  
           o[this.name].push(this.value || '');  
       } else {  
           o[this.name] = this.value || '';  
       }  
   });  
   return o;  
};  

 

分享到:
评论

相关推荐

    JQuery跨域访问解决方案

    JQuery的跨域解决方案主要依赖于JSONP(JSON with Padding)技术。JSONP是一种绕过同源策略的方式,它利用HTML中的`<script>`标签没有同源策略限制的特点。当jQuery使用`dataType: 'jsonp'`时,它实际上是在做以下几...

    Jquery跨域Ajax请求测试

    jQuery,作为一个强大的JavaScript库,提供了便捷的方式来处理这种问题,特别是通过其Ajax功能进行跨域请求。本示例"Jquery跨域Ajax请求测试"将详细讲解如何利用jQuery实现这一功能。 首先,了解同源策略是理解跨域...

    asp.net jquery 跨域提交请求数据

    本文将深入探讨如何在ASP.NET中配置允许jQuery进行跨域提交请求数据的方法。 首先,了解CORS的工作原理。CORS通过在HTTP头信息中添加`Access-Control-Allow-*`字段来实现跨域访问。服务器需要明确允许哪些源可以...

    Jquery 跨域访问 具体实例

    这是一份非常有用的Jquery跨域访问实例,里面提供了3种方法,前台后台都有涉及,希望对你们会有所帮助

    jQuery跨域问题解决方案

    在探讨如何使用jQuery解决跨域问题之前,我们首先要了解什么是跨域问题以及为什么会出现这一问题。跨域问题源于浏览器的同源策略(Same-origin policy),这是一个安全机制,限制了来自不同源的文档或脚本如何进行...

    jquery跨域调用 js跨域调用

    jQuery作为一款广泛使用的JavaScript库,提供了方便的API来处理这种限制,实现跨域调用。 一、什么是jQuery跨域调用? jQuery跨域调用主要是通过JSONP(JSON with Padding)和CORS(Cross-Origin Resource Sharing...

    使用jQuery.form插件,实现完美的表单异步提交

    jQuery.form插件正是为了满足这种需求而设计的,它扩展了jQuery库,使表单异步提交变得更加简单、灵活且强大。本文将详细介绍如何使用jQuery.form插件,实现完美的表单异步提交。 首先,我们需要了解jQuery.form...

    Jquery跨域Json请求处理

    #### 二、解决跨域问题的方法 对于跨域问题,有几种常用的方法来解决: - JSONP (JSON with Padding) - CORS (Cross-Origin Resource Sharing) - 使用代理服务器 - Server-side Scripting 本文主要讨论的是通过...

    JQuery AJAX跨域提交参数、接收json数据.docx

    JQuery 的 AJAX 功能是实现异步数据交互的核心部分,对于跨域提交参数和接收 JSON 数据的需求,JQuery 提供了多种解决方案。 首先,JQuery 的 AJAX 功能可以使用 `$.post()` 方法来发送 POST 请求,该方法可以取代...

    jquery跨域实例java

    自己做的小例子,关于跨域调用。用的是jquery. 里面两个工程。A和B。用A调用B。 放在tomcat或myeclipse中就可以跑起来。以前做建行的项目。用到的。很实用。 两个工程可以放在不同的机器上。IP也不同。相当...

    jquery form jquery.form.js

    2. 文件上传:通过XMLHttpRequest Level 2,jQuery Form可以实现跨域文件上传,兼容多种浏览器。 3. 进度条显示:在上传大文件时,提供进度反馈,用户可以直观了解上传进度。 4. 多种提交模式:支持GET和POST方式,...

    jQuery跨域问题

    然而,jQuery作为一个强大的JavaScript库,提供了多种方法来解决跨域问题,让我们一起深入探讨。 首先,我们需要理解什么是“同源策略”。同源策略是浏览器为了保护用户数据安全而设置的一项安全政策,它规定了只有...

    jquery下利用jsonp跨域访问实现方法

    本篇文章将深入探讨JSONP的工作原理以及在jQuery下如何利用它来实现异步跨域提交表单。 ### JSONP简介 JSONP是一种解决跨域问题的技术,其核心思想是利用`<script>`标签不受同源策略限制的特性。当浏览器解析到`...

    jquery跨域获取json

    总结来说,"jquery跨域获取json"是一个关于JavaScript编程和jQuery库如何通过JSONP技术解决跨域获取数据的问题。在实际开发中,了解并掌握这一技术对前端开发者尤其重要,因为很多API和数据服务都是部署在不同的域名...

    java乱码问题解决方法

    Java 开发中常见的问题之一,解决这个问题需要了解 Java 的编码方式、JSP 中文乱码问题、Tomcat 5.5 中文乱码问题、JDBC ODBC Bridge 的 Bug 及其解决方法、Solaris 下 Servlet 编程的中文问题及解决办法等。...

    javascript/jquery 跨域访问

    2. **JSONP(JSON with Padding)**:JSONP是一种早期解决跨域问题的方法,它依赖于`<script>`标签不受同源策略限制的特性。服务器返回一段JavaScript代码,这个代码通常是一个函数调用,带有要传递的数据作为参数。...

    Ajax +jquery跨域获取JSON

    这里的"Ajax + jQuery跨域获取JSON"是一个典型的Web开发技术应用场景,主要用于解决Web应用程序中不同源之间的数据共享问题。在本案例中,开发者成功地实现了跨域请求以获取JSON数据,并将这些数据用于展示天气预报...

    jquery ajax跨域html前台 php后台

    在解决跨域问题时,我们可以利用jQuery的`jsonp`模式。JSONP(JSON with Padding)是一种绕过同源策略的方法,它利用`<script>`标签可以跨域加载脚本的特性。 在描述中提到的"jquery ajax json 跨域不解释,代码很...

    Jquery跨域请求的实现

    **jQuery 跨域请求的实现** 在Web开发中,由于同源策略的限制,JavaScript通常无法直接发起跨域请求,即请求与当前页面不在同一域名下的资源。然而,随着Web应用的发展,有时我们需要从不同源获取数据,例如,从API...

Global site tag (gtag.js) - Google Analytics