我有我的門戶的一個問題,我不知道要怎麼去解決它。 我的portlet通過在2個文本字段中插入一個名稱來添加或檢索來自liferay的數據庫的信息。 按下提交按鈕後,我看到來自服務器的響應,這樣的JSON響應:請求與AJAX在Portlet(Liferay的)
{"id":301,"name":"Pepo"}
如果用戶正確插入如果搜索拋出一個不錯的結果。我必須重新回到瀏覽器才能看到門戶。
如何使用AJAX來從門戶到服務器動態地通過以下網址之後不刷新頁面?
的http://本地主機:8080/C /門戶/ json_service serviceClassName = com.liferay.test.service.TrabajadorServiceUtil & serviceMethodName = findByName & servletContextName = TrabajadorPlugin的portlet & serviceParameters = [參數1] &參數1 = NameInsertedByUser
現在我使用的是<form>
標籤是這樣的:
<%
//Shows "New Employee" in the text field when portlet is rendered, or gets the user input and pass it as a param to the URL
PortletPreferences prefs = renderRequest.getPreferences();
String employee = (String)prefs.getValue("name", "New Employee");
%>
<form id="postForm" method="post" action="http://localhost:8080/c/portal/json_service">
<input name="serviceClassName" type="hidden" value="com.liferay.test.service.TrabajadorServiceUtil" />
<input name="serviceMethodName" type="hidden" value="create" />
<input name="servletContextName" type="hidden" value="TrabajadorPlugin-portlet" />
<input name="serviceParameters" type="hidden" value="[param]" />
<input name="param" type="text" value="<%=employee%>" />
<input type="submit" value="Submit"/>
</form>
我明白AJAX是如何工作的,但我需要一些幫助,以實現URL創建我的功能被正確傳送到服務器同時GET
和POST
請求。這是我第一次嘗試使用AJAX。
非常感謝你,希望有人理解我的問題,能不能幫我。
嗨,謝謝你的回答。問題是,是的,我發送和接收JSON中的GET和POST請求,如下所示:{「id」:301,「name」:「Pepo」} 所以,我需要使用AJAX,不知道如何。我的URL如下: http:// localhost:8080/c/portal/json_service?serviceClassName = com.liferay.test.service.TrabajadorServiceUtil&serviceMethodName = findByName&servletContextName = TrabajadorPlugin-portlet&serviceParameters = [param1]&param1 = Pepo – agapitocandemor 2012-03-29 08:09:21
其中Param1由用戶在文本字段中。我只需要將它添加到URL的末尾並使用AJAX發送它,以便您不會看到該空白頁面,並且不需要手動刷新瀏覽器就可以返回到門戶網站。你有什麼建議嗎?謝謝了很多,這是我第一次使用AJAX,而且我有點迷路。 – agapitocandemor 2012-03-29 08:11:55
請參閱我的編輯,我更新了我的問題。 – agapitocandemor 2012-03-29 10:21:57