我在java中構建一個json對象。我需要將一個函數傳遞給我的JavaScript,並使用jquery $ .isFunction()進行驗證。我遇到的問題是我必須將json對象中的函數設置爲字符串,但json對象將周圍的引號與對象一起傳遞,從而導致無效函數。如何在腳本中不顯示引號的情況下執行此操作。Java將函數添加到json對象而不使用引號。
實例的Java
JSONObject json = new JSONObject();
json.put("onAdd", "function() {alert(\"Deleted\");}");
jQuery腳本
//onAdd output is "function() {alert(\"Deleted\");}"
//needs to be //Output is function() {alert(\"Deleted\");}
//in order for it to be a valid function.
if($.isFunction(onAdd)) {
callback.call(hidden_input,item);
}
有什麼想法?
嗯所以沒什麼穩定的,那麼刪除開始和結束引號呢? –
@George,如果你刪除了引號,它不是JSON。但是,如果您使用JSON對象在Java中呈現HTML,那麼您可以'out.println(json.get(「onAdd」))'並且它將打印出不帶引號 –