当用户点击按钮时,我有一个设置cookie值的功能。
在更改事件时,我从我的选择框中调用两个方法。这个函数调用正确,工作正常。但是当我从我的下面的jquery函数调用这两个函数时,我有问题。
<select NAME="the_menu" size="1" id="Item" onChange="UpdateUnitMenu(this, document.form_A.unit_menu); UpdateUnitMenu(this, document.form_B.unit_menu)">
如果“语言”名称中存在任何cookie,我想调用相同的方法。
这两个函数基本上根据第一个值的选择填充另外两个下拉选择框值。
MyForm
<form name="property_form" >
<select NAME="the_menu" size="1" id="Item" onChange="UpdateUnitMenu(this, document.form_A.unit_menu); UpdateUnitMenu(this, document.form_B.unit_menu)"> <optgroup label="Select Any One Type"> </optgroup> </select>
<input type="button" id='continue' value="Save as default value"/>
</form>
我的功能
<script>
$(document).ready(function(){
$('#continue').click(function() {
var singleValues = $("#Item").val();
$.cookie("language", singleValues);
})
alert($.cookie('language'));
$('#Item').val($.cookie('language')).attr('selected', true);
if($.cookie('language')!=null)
{
var th=$.cookie('language');
UpdateUnitMenu(th, document.form_A.unit_menu);//trying to call first function
UpdateUnitMenu(th, document.form_B.unit_menu);//trying to call first function
}
});
</script>
答案 0 :(得分:1)
在一种情况下调用带有元素引用的函数,在另一种情况下调用一个字符串。
要使函数同时使用,只有select
的值才能获得它的值:
if (typeof propMenu != 'string') {
i = propMenu.selectedIndex;
} else {
i = propMenu;
}
或者,使两个不同的函数使用不同的参数,并使一个函数从select
获取值,然后调用另一个函数。