これは古い問題であることは知っていますが、同様の状況があり、これを少し異なる方法で実行しました。これが他の誰かに役立つことを願っています。
JavaScript で<table>
for<tr>
要素を解析してから、隠し<input>
フィールドに保存した JSON 文字列を作成しました。
これは別のスタック オーバーフローの投稿から改作されました: post data from table row like json format
基本的なコードは以下です。
フル @ JSFiddle: http://jsfiddle.net/leisenstein/vy3ux/
// object to hold your data
function dataRow(value1,value2,value3) {
this.dxCode = value1;
this.dxDate = value2;
this.dxType = value3;
}
// create array to hold your data
var dataArray = new Array();
// Start from 2 if you need to skip a header row
for(var i = 2; i <= $("table tr").length; i++){
// create object and push to array
dataArray.push(
new dataRow(
$("table tr:nth-child(" + i + ") td").eq(0).html(),
$("table tr:nth-child(" + i + ") td").eq(1).html(),
$("table tr:nth-child(" + i + ") td").eq(2).html())
);
}
var sJson = JSON.stringify(dataArray);