Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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 检查选择框是否包含特定optgroup内的字符串_Javascript_Jquery - Fatal编程技术网

Javascript 检查选择框是否包含特定optgroup内的字符串

Javascript 检查选择框是否包含特定optgroup内的字符串,javascript,jquery,Javascript,Jquery,我的代码中有一行是这样写的:“如果选择框中没有相同的选项,请做些什么。”目前,只有在没有同名学校的情况下,才会创建“霍格沃茨”选项 我需要将其变成“如果选择框在同一个optgroup下不包含相同的选项,则插入新选项”。因此,如果在“Hogsmede”optgroup中已经有一所“Hogwarts”学校,我不希望创建第二所。但如果在洛顿还有另一所“霍格沃茨”学校,我希望它出现在“伦敦”选项组中 // Store optgroup in a variable. schoolObject.town i

我的代码中有一行是这样写的:“如果选择框中没有相同的选项,请做些什么。”目前,只有在没有同名学校的情况下,才会创建“霍格沃茨”选项

我需要将其变成“如果选择框在同一个optgroup下不包含相同的选项,则插入新选项”。因此,如果在“Hogsmede”optgroup中已经有一所“Hogwarts”学校,我不希望创建第二所。但如果在洛顿还有另一所“霍格沃茨”学校,我希望它出现在“伦敦”选项组中

// Store optgroup in a variable. schoolObject.town is a string such as 'Hogsmeade'.      
$optgroup = $("#schools").find("optgroup[label='" + schoolObject.town + "']");

// schoolObject.name is the name of a school, such as 'Hogwarts'.
// I need to modify the condition in the next line.
if ($("#schools option:contains('" + schoolObject.name + "')").length == 0) {
    // Insert new option
}

由于您已经有了对
optgroup
元素的引用,因此可以使用
find()
检查其中是否存在具有指定文本的
选项

$optgroup = $("#schools").find("optgroup[label='" + schoolObject.town + "']");
if ($optgroup.find("option:contains('" + schoolObject.name + "')").length == 0) {
    // Insert new option
}