62,025
社区成员
发帖
与我相关
我的任务
分享
<tr class="sub-list-data">
<td align="center">
<input type="checkbox" value="<%=Model.SubDataList[i].ID %>" name="Check_ID" />
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].OrderNO", Model.SubDataList[i].OrderNO, new { @size = "16", @class = "validate[required]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].ItemName", Model.SubDataList[i].ItemName, new { @size = "8" , @class = "validate[required]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].ItemVariety", Model.SubDataList[i].ItemVariety, new { @size = "8" , @class = "validate[required]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].ItemSpec", Model.SubDataList[i].ItemSpec, new { @size = "8", @class = "validate[required]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].StoveNO", Model.SubDataList[i].StoveNO, new { @size = "16", @class = "validate[required]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].InQty", Model.SubDataList[i].InQty, new { @size = "8", @class = "validate[required,custom[number]]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].Price", Model.SubDataList[i].Price, new { @size = "8", @class = "validate[required,custom[number]]" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].Remark", Model.SubDataList[i].Remark, new { @size = "45" })%>
</td>
<td align="center">
<%=Html.TextBox("SubDataList[" + i + "].BarCode", Model.SubDataList[i].BarCode, new { @size = "12", @class = "validate[required]" })%>
</td>
</tr>
function jsonToText() {
JsonText = "[";
var recordList = $(".sub-list-data");
recordList.each(function (i, tr) {
JsonText += '{';
JsonText += '"ID":' + '"' + $(tr).find("input[name$='ID']").val() + '",';
JsonText += '"MainID":' + '"' + $(tr).find("input[name$='MainID']").val() + '",';
JsonText += '"OrderNO":' + '"' + $(tr).find("input[name$='OrderNO']").val() + '",';
JsonText += '"ItemName":' + '"' + $(tr).find("input[name$='ItemName']").val() + '",';
JsonText += '"ItemVariety":' + '"' + $(tr).find("input[name$='ItemVariety']").val() + '",';
JsonText += '"ItemSpec":' + '"' + $(tr).find("input[name$='ItemSpec']").val() + '",';
JsonText += '"StoveNO":' + '"' + $(tr).find("input[name$='StoveNO']").val() + '",';
JsonText += '"InQty":' + '"' + $(tr).find("input[name$='InQty']").val() + '",';
JsonText += '"Price":' + '"' + $(tr).find("input[name$='Price']").val() + '",';
JsonText += '"Remark":' + '"' + $(tr).find("input[name$='Remark']").val() + '",';
JsonText += '"BarCode":' + '"' + $(tr).find("input[name$='BarCode']").val() + '"},';
});
JsonText = JsonText.substring(0, JsonText.length - 1);
JsonText += "]";
$("#SubDataListText").val(JsonText);
}
后台反序列化:
public static List<T> Deserialize<T>(string text)
{
try
{
JavaScriptSerializer js = new JavaScriptSerializer();
List<T> list = (List<T>)js.Deserialize(text, typeof(List<T>));
return list;
}
catch (Exception e)
{
var logger = new TxtLogger();
logger.Write("JsonHelper", e);
return null;
}
}