我對Ajax/Jquery有點新鮮,所以如果這是一個簡單的問題,我很抱歉,但我無法弄清楚。使用JQuery格式化數據以發佈到CakePHP控制器
我正在使用CakePHP和JQuery。
我想通過從HTML頁面中拉出「innerHTML」來將鏈接,標籤和說明保存到表中。我似乎無法將數據置於預期的格式 - 這是控制器預期的格式。
我拉從HTML數據時,HTML是這樣的:
<div class="listing">
<ul>
<li class="link">www.yahoo.com</li>
<li class="label">Yahoo</li>
<li class="description">This is Yahoo's home page</li>
</ul>
</div>
...
我可以解析HTML拿到我的「鏈接」,「標籤」和「說明」。
但是,當我將數據發佈到控制器時,我無法弄清楚如何獲取預期格式的數據。
數據拉動到變量用JavaScript(JQuery的)後,我後使用下面的JQuery函數它:
$.post("/links/save", {link: link, label: label, notes: description});
當數據訊息至所述控制器,所述數據的格式是:
(
[form] => Array
(
[link] => www.yahoo.com
[label] => Yahoo
[description] => This is Yahoo's home page
)
)
控制器期望數據的格式爲:
(
[data] => Array
(
[Link] => Array
(
[link] => www.yahoo.com
[label] => Yahoo
[description] => This is Yahoo's home page
)
)
)
我知道我可以將數據照原樣放入控制器中並以正確的格式存儲,但似乎沒有必要。
有人可以告訴我如何操縱JQuery中的數據,以便它發佈控制器期望它?
這更多的是我之後的,但它不起作用。當我嘗試這種格式時,我將[object Object]看作發佈的數據。 有什麼建議嗎? – user429511 2010-08-25 02:08:38
@andy啊,對不起,我無法確定jQuery是如何將這些序列化的。不確定像'$ .serializeArray()'這樣的函數是否有幫助。最糟糕的情況下,你應該能夠像這樣構建正確的格式:'{'data [Model] [link]':...,...}' – deceze 2010-08-25 02:30:50
這樣做!謝謝! – user429511 2010-08-26 02:14:00