我有jQuery自動完成功能的問題。如果我指定一個不重定向的源代碼,我的自動完成功能可以毫無問題地工作(這是在我的測試環境中)。對於生產,這必須在我們的工作流程工具中使用。jquery自動完成源重定向
jquery源代碼頁也寫在這個工作流工具中,並輸出數據。唯一的問題是,當我使用GET參數調用此輸出頁面時,它將我重定向到包含JSON結果的另一個頁面。
jquery似乎有點問題,因爲我沒有得到任何建議。
這是輸入字段的jQuery:
$(function() {
$("#unameLeiter").autocomplete({
source: function(request, response) {
$.ajax({
url: "http://localhost:8082/ivy/pro/designer/ldapCurrent2/137553578A7A2B3F/persons.ivp",
dataType: "jsonp",
data: {
search: request.term
},
success: function(data) {
response($.map(data.persons, function(item) {
return {
label: item.cn,
value: item.imPersonalNumber
}
}));
}
});
},
minLength: 0,
select: function(event, ui) {
$("<div/>").text(ui.item.label + " " + ui.item.value).prependTo("#output");
}
})
})
的HTML看起來很討厭,但是這並不重要組成部分,因爲這僅僅是輸入字段和輸出股利。當我看到網絡請求時,我可以看到jquery對「源」url進行了適當的調用,但隨後被重定向到另一個URL(顯示的結果是我搜索的)。
那麼,我該如何處理jquery中的源代碼,該代碼重定向到實際輸出?
總結
- jQuery的發送數據這樣
http://source/persons.ivp?callback=jquery87346&search=John
- 工作流工具需要的參數,對其進行處理,並重定向到一個新的URL
http://source/L84FJ8LA4LS/CMSObject.ivc?taskId=84&processId=LKIA47&pid=KS4U6T84LSZ
- 新的URL中包含了參數的結果
John
- jQuery不處理由於
302 permanently moved
重定向導致的結果。
我無法改變這個工作流程工具的行爲。所以我必須用jQuery解決這個問題。
更新:我注意到,輸出JSON數據,html編碼我的輸出,這似乎打擾jQuery的JSP文件。有沒有人知道我如何在JSP中打印數據而不用 html-encoding呢?
它的外觀時,我認爲輸出頁面的源代碼: jquery1234({"total":"2", "persons":[{"cn":"John Smith", "imPersonalNumber":"5616"},{"cn":"Peter Jackson", "imPersonalNumber":"7016743"}]})
如何看起來正常:
jquery1234({"total":"2", "persons":[{"cn":"John Smith", "imPersonalNumber":"5616"},{"cn":"Peter Jackson", "imPersonalNumber":"7016743"}]})