我有这个JSF下拉框......
<f:selectItem itemValue="0" itemLabel="Select a criterion" noSelectionOption="true"></f:selectItem>
<f:selectItem itemValue="4" itemLabel="Map location: Main land US"></f:selectItem>
<f:selectItem itemValue="5" itemLabel="Map location: Alaska"></f:selectItem>
<f:selectItem itemValue="6" itemLabel="Map location: Hawaii"></f:selectItem>
这个JavaScript函数......
function initialize() {
//var myLatlng = new google.maps.LatLng(46.8722222,-113.9930556);
//map centered for US display
var myLatlng = new google.maps.LatLng(37.09024,-95.712891)
var myOptions = {
zoom: 4,
center: myLatlng,
disableDefaultUI: true,
zoomControl: true,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
我想添加一些if语句,让我将latlong部分设置为不同的项目
if (itemValue == 5)
{
//alaska
var myLatlng = new google.maps.LatLng(64.0000,-150.0000)
}
if (itemValue == 5)
{
//hawaii
var myLatlng = new google.maps.LatLng(21.3114,-157.7964)
//end new shit
}
但我不确定如何将项目值从JSF下拉列表传递到javascript函数。
最好的方法是什么? 感谢。
答案 0 :(得分:0)
如果您查看下拉列表的呈现HTML,这会有所帮助,因为这就是Javascript可以使用的所有内容。基本上,您必须通过id,class或任何其他选择器选择HTML元素,然后获取其值。
如果你正在使用jQuery,这里有一个获取itemValue的简单方法:
var selectedItemValue = $('.mySelector').children("option:selected").val();
...其中mySelector是分配给selectOneMenu标记的styleClass。