我的HTML正文中有两个选择选项。当select选项之前有更改时,我会尝试更新select选项。
但是,我在浏览器控制台中看到以下错误
未捕获计划:未定义不是$(‘#TypeError’).selectmenu(“刷新”)上的函数;
HTML
<select name="service" id="service" class="default" tabindex="3" onchange="updatePlanInfo(this)">
<option value="" selected disabled>Service</option> <!-- Example of a hidden dropkick placeholder -->
<option value="Hadoop">Hadoop</option>
<option value="NoSQLDB">NOSQLDB</option>
</select>
<select name="plan" id="plan" class="default" tabindex="4" >
<option value=""selected disabled>Plan</option>
<option value="Free">Free</option>
<option value="Small">Small</option>
</select>
Javascript
function updatePlanInfo(servicename)
{
alert(servicename);
var newOptions = {
"Option 1": "value1",
"Option 2": "value2",
"Option 3": "value3"
};
var $el = $("#plan");
$el.empty(); // remove old options
$.each(newOptions, function(value,key) {
$el.append($("<option></option>")
.attr("value", value).text(key));
});
$('#plan').selectmenu("refresh");
}
发布于 2015-02-21 11:53:46
$('').selectmenu()是一个jquery ui小部件。您需要使用jquery ui js文件才能使用此小部件。
我希望这能对你有所帮助。
发布于 2015-02-21 12:03:49
这条线
$('#plan').selectmenu("refresh");
出现脚本错误的原因有三:
对于您在控制台中看到的错误,selectmenu
方法是错误的,您似乎没有在页面中包含此框架。
selectmenu
元素初始化为refresh
,然后才能对其执行
操作。喜欢:$("#plan").selectmenu();
这是一个有效的example。
但是,如果您不打算在项目中使用JQuery UI框架,则可以简单地注释掉尝试刷新select元素的行。
https://stackoverflow.com/questions/28641705
复制相似问题