gpt4 book ai didi

javascript - 如何在页面加载后立即通过 Bean JSF 传递参数来调用 JS 函数?

转载 作者:行者123 更新时间:2023-11-30 21:02:18 24 4
gpt4 key购买 nike

我必须在页面加载时通过将 vector 作为参数传递来调用我的 JS 中的函数。

我可以使用 p: commandButton 来做到这一点,这里是:

 actionListener = "# {routeEnterBean.GetMap ()}"

我在 Bean 中运行该函数(在数据库中获取值),然后在此处:

 oncomplete = "initMap (xhr , status, args) "

至此,JS函数执行完毕

代码 bean :

public void gerarMapa() {   
RequestContext context = RequestContext.getCurrentInstance();
context.addCallbackParam("coord", new
org.primefaces.json.JSONArray(coordenadas));
}

函数JS

function initMap(xhr, status, args) {  
var qtd_entregas = args.coord.length;
for (var i = 0; i < args.coord.length; i++) {
waypts.push({
location : args.coord[i].latitude + ', ' + args.coord[i].longitude,
stopover : true,
});
}
}

但我不想在加载页面后立即单击按钮来执行此操作。

我知道可以使用这个命令执行一个函数:

RequestContext.getCurrentInstance().execute("testeJS();");

但我不知道如何将 vector 作为参数传递

最佳答案

您可以保留现有代码并使用 Primefaces p:remoteCommand通过在您的页面上添加以下行

<p:remoteCommand autoRun="true" actionListener="#{routeEnterBean.gerarMapa()}" oncomplete="initMap(xhr, status, args);"/>

属性 autoRun="true" 将强制 p:remoteCommand 在页面加载时执行。

关于javascript - 如何在页面加载后立即通过 Bean JSF 传递参数来调用 JS 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47020717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com