Home >Web Front-end >JS Tutorial >Jquery combines form elements into json format, asp.net deserialization_jquery

Jquery combines form elements into json format, asp.net deserialization_jquery

WBOY
WBOYOriginal
2016-05-16 18:50:311012browse

Author: Ao Shiwei Email: ikmb@163.com Reprinted with the author
Note: 1. js combines the name and value of the form element into json format according to the class attribute of the form element; the class attribute of the form element can be used to target Combine JSON data efficiently.
2. The back-end ASP.NET uses JavaScriptSerializer to deserialize it into an object array.
3. Benefits: Simplified front-end data reading and back-end data assignment.

Copy code The code is as follows:

function GetJSONStr(class_name) {
var a = [];
//Text box
$("." class_name).filter(":text").each(function(i) {
//alert(this.name);
//alert(this.value);
a.push({ name: this.name, value: this.value });

});
//drop-down list
$("." class_name).filter("select").each(function(i) {
//alert(this.name);
//alert(this.value);
a.push({ name: this.name, value: this.value });

});
//Radio button
$("." class_name).filter(" :radio").filter(":checked").each(function(i) {
//alert(this.name);
//alert(this.value);
a.push ({ name: this.name, value: this.value });
});
//Check box starts
var temp_cb = "";
$("." class_name) .filter(":checkbox").filter(":checked").each(function(i) {
if (temp_cb.indexOf(this.name) == -1) {
temp_cb = this. name ",";
}

});
var temp_cb_arr = temp_cb.split(",");
var cb_name = "";
var cb_value = "" ;
for (var temp_cb_i = 0; temp_cb_i < temp_cb_arr.length - 1; temp_cb_i ) {
cb_name = temp_cb_arr[temp_cb_i]; ​​
var cb_value_length = $("input[name='" temp_cb_arr[ temp_cb_i] "']:checked").length;
$("input[name='" temp_cb_arr[temp_cb_i] "']:checked").each(function(i) {
if (i = = cb_value_length - 1)
cb_value = this.value;
else
cb_value = this.value ",";

});
//alert(cb_name);
//alert(cb_value);
a.push({ name: cb_name, value: cb_value });
}
//End of check box


/ /Combined to JSON
var temp_json = "";
for (var json_i = 0; json_i < a.length; json_i ) {
if (json_i != a.length - 1) {
temp_json = '"' a[json_i].name '":"' a[json_i].value '",';
}
else {
temp_json = '"' a[json_i]. name '":"' a[json_i].value '"';
}
}
return "{" temp_json "}";
}

ASP.NET
Copy code The code is as follows:

public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
JavaScriptSerializer Serializer = new JavaScriptSerializer();
string r = Request.Form[ "msg"];

//{"Name":"MyName1","Single":"one"}

t_json t_json_object = Serializer.Deserialize(r);

Response.Write(t_json_object.Name);
Response.End();
}
}

class t_json
{
public DateTime Name;
public string Single;
}
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn