在页面中使用 JQuery 读取 apex class 中的list
在 Apex Class 中, 需要把 List 转成 String, 所以后台定义的变量需要是 String
public Class PageController{
Public String testListJson{get;set}
public PageController{
List<String> stringList = new List<String>{'test1', 'test2', 'test3'};
testListJson= JSON.serialize(stringList);
}
}
在 VF page 的 方法中
function readListJs(){
var stringListJson = '{!testListJson}';
var stringList = JSON.parse(stringListJson);
for (var i = 0; i < stringList.length; i++) {
var currentString = stringList[i];
console.log('String at index ' + i + ': ' + currentString);
}
}
RemoteAction 方法的调用
在 Apex Class 中定义一个 RemoteAction 的方法, 在方面上面添加 @RemoteAction 注解
public Class PageController{
@RemoteAction
public static List<String> remoteController() {
List<String> returnList = new List<String>{'String1', 'String2', 'String3'};
return returnList;
}
}
在 VF Page 的 Javascript 中使用
function callRemoteJS(){
Visualforce.remoting.Manager.invokeAction(
'{!$RemoteAction.PageController.remoteController}',
function(result, event){
if (event.status) {
console.error('result:', result);
}
else {
console.error('Error:', event.message);
}
},
{escape: true}
);
}