Javascript 检测所选项目是否在数据列表中

Javascript 检测所选项目是否在数据列表中,javascript,jquery,Javascript,Jquery,我有一点JQuery,我正试图使用它来检测数据列表选择框中的值是否实际在列表中,以下是我所拥有的 <div class='form-row'> <div class='col-xs-12 form-group required' style="margin-top: -2px; margin-bottom: 0px;"> <h2> <label class='control-label' style="fo

我有一点JQuery,我正试图使用它来检测数据列表选择框中的值是否实际在列表中,以下是我所拥有的

<div class='form-row'>
    <div class='col-xs-12 form-group required' style="margin-top: -2px; margin-bottom: 0px;">
        <h2>
            <label class='control-label' style="font-size: 20px;">
                Product code
            </label>
        </h2>
        <input required id="ItemSelect" list=jobs style='font-size:21px;height: 40px;' class='form-control' name="Code">
        <datalist id="jobs">
            <?php
                foreach ($this->Products as $a) {
                    $inputValue = "  " . htmlentities($a["Code"] . " | " . $a["Name"]) . " ";
                    echo '<option>' . $inputValue;
                }
            ?>
        </datalist>
    </div>
目前,如果我输入了一个不在列表中的值,它会在那里返回为no,但如果我从列表中选择了一个值,它也会返回为not there

这里是console.logs的输出

console.log(datalistval); // X01A172 | Sub Assembly 2
console.log($("#ItemSelect option[value='" + datalistval + "']").length) // 0  
not there

当没有选项时,函数val()返回nullselected@MauricePerry选择了一个选项console.log(datalistval);显示所选内容尽管如此,您的测试仍然是错误的。您是如何得出此结论的?列表的Id是jobs,因此您需要的是
#jobs
,而不是
#ItemSelect option