我必须处理一些旧的Javascript代码,这些代码在 addOption 和 selectOptions
时抛出错误错误:对象没有方法 selectOptions
有人可以解释一下为什么它不起作用?我正在使用jQuery 1.3
$("some_id").addOption(nodeId, nodeName); // add to list
$("some_id").selectOptions(/^~~/i, true); // clear selection
我解决了这个
的addOption行$("some_id")[0].options.add( new Option(nodeName,nodeId));
但我仍然遇到 selectOptions 错误。
更新的 刚发现应用程序也在使用 Dojo 。这可能是问题吗?这些方法是否具体针对Dojo?
谢谢!
答案 0 :(得分:2)
使用Jquery Append添加此类
等选项$("yourid/class here").append($("<option></option>").attr("value", youroption-value).text(youroption-text));
答案 1 :(得分:1)
试试这个,你可以编写自己的方法:
$.fn.addOption = function(optText, optValue){
var option = new Option(optText, optValue);
return this.append(option);
};
$.fn.selectOption = function(toSelect){
var $option = this.find("option[value='"+toSelect+"']");
if($option.length > 0){
//if option with the value passed on found then select it
$option.prop("selected","selected");
}else{
alert("option not found");
}
};
var $select = $("#selectOption");
$select.addOption("Dummy1",2);
$select.addOption("Dummy2",3);
$select.selectOption(231);
答案 2 :(得分:1)
终于找到了它的错误。 这些方法来自TexoTela的 jquery plugin 。 为什么有人会这样做只为选择框?打败我
感谢大家的回复。他们确实教给我一些东西。