[問題] 動態改變Document中的JS objects
請問各位前輩,現在後端在文件內塞了一段<script>
裡面包含一段資料物件方便我在前端做處理,
當按下儲存之後,後端會回傳該區塊內的內容回server,
然而我發現不論我怎麼更動物件內的值,
文件本身是不會被改變的,所以我得想辦法把物件寫回該區塊,
請問有什麼好的方法可以用嗎???
例:
<div class="data_area">
<script>
var data = {name:"王小明",age:"18",...};
</script>
</div>
我在前端用alert可以抓到 data.name 的值,
也可以更動他,然而文件內的內容並不會跟著更動,
可是麻煩的是後端那邊是用asp內建的web parts來做存取,
變成我一定要把資料寫回 data_area這區塊之後儲存後端才收得到。
我目前是想說就動態產生一個script包新資料的物件,
再用innerHTML塞回data area,只是資料一多就很麻煩,
不知有無方法可以直接append資料物件到文件區塊中呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 64.166.83.198
→
02/17 10:21, , 1F
02/17 10:21, 1F
→
02/17 13:02, , 2F
02/17 13:02, 2F
→
02/17 13:02, , 3F
02/17 13:02, 3F
→
02/17 14:11, , 4F
02/17 14:11, 4F
→
02/17 14:11, , 5F
02/17 14:11, 5F
→
02/17 14:13, , 6F
02/17 14:13, 6F
→
02/17 19:21, , 7F
02/17 19:21, 7F
→
02/17 19:21, , 8F
02/17 19:21, 8F
→
02/17 19:22, , 9F
02/17 19:22, 9F
→
02/17 20:04, , 10F
02/17 20:04, 10F
→
02/17 20:05, , 11F
02/17 20:05, 11F
我後來了解到這點,文件本身是靜態的,並不會跟JS的data做連動,
要改變文件內的內容就得另外寫函式動態去寫入純文字...
要達到我的需求,最簡單的做法就是用JQuery.toJSON
把Runtime的JS物件轉成JSON(或者是說JSON化的純文字串)
以後再overwrite該區塊...
var json = $.toJSON(data);
$(".data_area").children("script").html("var data="+json+";");
至於後端那邊要怎麼去儲存元件內容那就他那邊的事了 XDDDD
※ 編輯: nightspirit 來自: 64.166.83.198 (02/18 07:29)