Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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 jQuery addOption和selectOptions_Javascript_Jquery_Dojo - Fatal编程技术网

Javascript jQuery addOption和selectOptions

Javascript jQuery addOption和selectOptions,javascript,jquery,dojo,Javascript,Jquery,Dojo,我必须处理一些在addOption和selectOptions上抛出错误的旧Javascript代码 错误:对象没有方法selectOptions 有人能解释一下为什么它不起作用吗?我正在使用jQuery1.3 $("some_id").addOption(nodeId, nodeName); // add to list $("some_id").selectOptions(/^~~/i, true); // clear selection 我通过这个解决了addOption行 $("som

我必须处理一些在addOption和selectOptions上抛出错误的旧Javascript代码

错误:对象没有方法selectOptions

有人能解释一下为什么它不起作用吗?我正在使用jQuery1.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特有的吗

谢谢

用于添加如下选项

$("yourid/class here").append($("<option></option>").attr("value", youroption-value).text(youroption-text));
$(“此处的yourid/class”).append($(“”).attr(“value”,youroption value).text(youroption text));
用于添加如下选项

$("yourid/class here").append($("<option></option>").attr("value", youroption-value).text(youroption-text));
$(“此处的yourid/class”).append($(“”).attr(“value”,youroption value).text(youroption text));

尝试一下,您可以编写自己的方法:

$.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);

在这里使用小提琴:

试试这个,你可以编写自己的方法:

$.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);

在这里工作的小提琴:

终于找到了它的毛病所在。 这些方法来自TexoTela的一项研究。 为什么会有人只为选择框这么做??真让我受不了

谢谢大家的回复。他们确实教会了我一些东西


终于找到了问题所在。 这些方法来自TexoTela的一项研究。 为什么会有人只为选择框这么做??真让我受不了

谢谢大家的回复。他们确实教会了我一些东西


是的,我知道这种方法,但我需要知道第二行到底在做什么。它在清除什么?不能说,从来没有使用过这种方法来清除选择列表选项,我总是使用.empty()或.remove(),不管怎样,我认为这与DojoYes有关我知道这种方法,但我需要知道第二行到底在做什么。它正在清除什么?不能说,从来没有使用过这种方法来清除选择列表选项,我总是使用.empty()或.remove()。无论如何,我认为这与DojoOybe
first_option=$('some_id')[0]有关。选项[0]。值$('some_id').val(第一选项)
甚至
$('select')。val(“”)
您以前检查过代码中是否有selectOption函数声明吗?错误表示该函数不存在。据我所知,没有本机jQuery selectOptions函数。可能
first\u option=$('some\u id')[0]。选项[0]。值$('some_id').val(第一选项)
甚至
$('select')。val(“”)
您以前检查过代码中是否有selectOption函数声明吗?错误表明该函数不存在,据我所知,没有原生jQuery selectOptions函数。