我從服務器到客戶端只有純數字ID,如何動態地將它添加到html隱藏字段,以便看起來像數組或JSON格式(我的意思是:["32","33","34"]
),以便在下一步我可以在serwer上接收並解析?隱藏字段僅在開始時包含空白括號[]
。如何將新數字動態格式化並添加到隱藏字段?
我目前的代碼覆蓋隱藏字段從[]
到例如"32"
:
$("#myHiddenField").val(JSON.stringify(data.result[0].newid));
我從服務器到客戶端只有純數字ID,如何動態地將它添加到html隱藏字段,以便看起來像數組或JSON格式(我的意思是:["32","33","34"]
),以便在下一步我可以在serwer上接收並解析?隱藏字段僅在開始時包含空白括號[]
。如何將新數字動態格式化並添加到隱藏字段?
我目前的代碼覆蓋隱藏字段從[]
到例如"32"
:
$("#myHiddenField").val(JSON.stringify(data.result[0].newid));
您可以使用$.parseJSON()反序列化從隱藏的輸入值,push()新項目的數組,然後序列化再次數組:
var $hiddenField = $("#myHiddenField");
var results = $.parseJSON($hiddenField.val());
results.push(data.result[0].newid);
$hiddenField.val(JSON.stringify(results));
但是,它可能是更有效地保持添加項目時跟蹤數組,並且僅在提交表單時(例如在submit事件處理程序中)將其序列化。
爲了避免解析在隱藏字段中的數據,你可以保持一個實際的陣列,推動新的ID給它,連載它放在隱藏字段:
var myArray = [];
myArray.push(data.result[0].newid);
$("#myHiddenField").val(JSON.stringify(myArray));
注意:一組數字的JSON形式將是[32,33,34]
而不是["32","33","34"]
,這也是您從上面的代碼中獲得的。如果您想要使用字符串而不是數字的格式,請在添加數值之前添加.toString()
:
myArray.push(data.result[0].newid.toString());