Пример:
Мы можем отобразить строковое представление объекта и его раздекодированное значение с помощью метода decodeURIComponent. Занчения перменных recursiveEncoded и recursiveDecoded отобразятся следующим образом:
a%5Bone%5D=1&a%5Btwo%5D=2&a%5Bthree%5D=3&b%5B%5D=1&b%5B%5D=2&b%5B%5D=3
a[one]=1&a[two]=2&a[three]=3&b[]=1&b[]=2&b[]=3
"jQuery"
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var recursiveEncoded = jQuery.param(myObject);
var recursiveDecoded = decodeURIComponent(jQuery.param(myObject));
$('#results1').text(recursiveEncoded);
$('#results2').text(recursiveDecoded);
"HTML"
<div id="results1"></div> <div id="results2"></div>
"CSS"
div { color:blue; }
"Живой пример jQuery"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link href="http://slyweb.ru/css/jqueryiframe.css"
rel="stylesheet" type="text/css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var recursiveEncoded = jQuery.param(myObject);
var recursiveDecoded = decodeURIComponent(jQuery.param(myObject));
$('#results1').text(recursiveEncoded);
$('#results2').text(recursiveDecoded);
});
</script>
</head>
<body class="iframe">
<div id="results1"></div>
<div id="results2"></div>
</body>
</html>
<style>
div { color:blue; }
</style>
Пример:
Мы можем отобразить строковое представление объекта и его раздекодированное значение с помощью метода decodeURIComponent.
значения переменных recursiveEncoded и recursiveDecoded отобразятся следующим образом:
a=%5Bobject+Object%5D&b=1&b=2&b=3
a=[object+Object]&b=1&b=2&b=3
"jQuery"
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var shallowEncoded = jQuery.param(myObject, true);
var shallowDecoded = decodeURIComponent(shallowEncoded);
$('#results1').text(shallowEncoded);
$('#results2').text(shallowDecoded);
"HTML"
<div id="results1"></div> <div id="results2"></div>
"CSS"
div { color:red; }
"Живой пример jQuery"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link href="http://slyweb.ru/css/jqueryiframe.css"
rel="stylesheet" type="text/css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var shallowEncoded = jQuery.param(myObject, true);
var shallowDecoded = decodeURIComponent(shallowEncoded);
$('#results1').text(shallowEncoded);
$('#results2').text(shallowDecoded);
});
</script>
</head>
<body class="iframe">
<div id="results1"></div>
<div id="results2"></div>
</body>
</html>
<style>
div { color:red; }
</style>
Пример:
Приоритетным поведением метода $.param() для Jquery 1.4 является установка аргумента traditional как true.
"jQuery"
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var shallowEncoded = jQuery.param(myObject, true);
var shallowDecoded = decodeURIComponent(shallowEncoded);
$('#results1').text(shallowEncoded);
$('#results2').text(shallowDecoded);
"HTML"
<div id="results1"></div> <div id="results2"></div>
"CSS"
div { color:red; }
"Живой пример jQuery"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link href="http://slyweb.ru/css/jqueryiframe.css"
rel="stylesheet" type="text/css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
var myObject = {
a: {
one: 1,
two: 2,
three: 3
},
b: [1,2,3]
};
var shallowEncoded = jQuery.param(myObject, true);
var shallowDecoded = decodeURIComponent(shallowEncoded);
$('#results1').text(shallowEncoded);
$('#results2').text(shallowDecoded);
});
</script>
</head>
<body class="iframe">
<div id="results1"></div>
<div id="results2"></div>
</body>
</html>
<style>
div { color:red; }
</style>