Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将JavaScript值传递给JSF EL和支持bean?_Javascript_Jsf_Html_Geolocation_El - Fatal编程技术网

如何将JavaScript值传递给JSF EL和支持bean?

如何将JavaScript值传递给JSF EL和支持bean?,javascript,jsf,html,geolocation,el,Javascript,Jsf,Html,Geolocation,El,我正在做JSF地理定位服务,需要将纬度和经度传递给bean进行处理。HTML5允许使用JavaScript获取位置,例如在中完成。 将下面的代码放到JSF页面显示带有GPS坐标的警报 <script> if (geo_position_js.init()) { geo_position_js.getCurrentPosition(success_callback,error_callback,{enableHighAccuracy:true,options:5

我正在做JSF地理定位服务,需要将纬度和经度传递给bean进行处理。HTML5允许使用JavaScript获取位置,例如在中完成。 将下面的代码放到JSF页面显示带有GPS坐标的警报

<script>
    if (geo_position_js.init()) {
        geo_position_js.getCurrentPosition(success_callback,error_callback,{enableHighAccuracy:true,options:5000});
    } else {
        alert("Functionality not available");
    }
    function success_callback(p) {
        alert('lat='+p.coords.latitude.toFixed(2)+';lon='+p.coords.longitude.toFixed(2));
    }

    function error_callback(p) {
        alert('error='+p.message);
    }
</script>

if(geo_position_js.init()){
geo_position_js.getCurrentPosition(成功回调,错误回调,{enableHighAccurance:true,选项:5000});
}否则{
警报(“功能不可用”);
}
函数成功\u回调(p){
警报('lat='+p.coords.latitude.toFixed(2)+';lon='+p.coords.longitude.toFixed(2));
}
函数错误\u回调(p){
警报(“错误=”+p.message);
}

如何使用
p.coords.latitude.toFixed(2)
值将其传递给
h:inputtext
组件?

您需要意识到JSF在Web服务器上运行,并生成一组HTML/CSS/JS代码,这些代码从Web服务器发送到webbrowser,而webbrowser只运行HTML/CSS/JS。在webbrowser中的页面上单击鼠标右键,然后选择“查看源”。代替
您将看到如下内容

<input type="text" id="formid:inputid" />
另见:

这在Facelet中有效吗?因为我使用了它,但它始终在后台返回空值bean@Developer106:JSF/Facelets仅在web服务器上运行并生成HTML。JS是HTML的一部分,在webbrowser上运行。这与如何生成HTML完全无关。如果您“不断获取null”,那么这只意味着您不了解JSF/Facelets和HTML/JS是如何工作的。
var input = document.getElementById('formid:inputid');
input.value = 'new value';