Javascript $(';选择器';).editableSelect()获取值的正确方法editableSelect

Javascript $(';选择器';).editableSelect()获取值的正确方法editableSelect,javascript,jquery,jsp,select,Javascript,Jquery,Jsp,Select,*我的jsp* <script> let advSearchTitleForBookId; $(function () { $('#sBook').editableSelect(); $('#sBook') .editableSelect() .on('select.editable-select', function (e, li) { advSearchTitleForBookId=li.

*我的jsp*

<script>
let advSearchTitleForBookId;

$(function () {
  $('#sBook').editableSelect();

   $('#sBook')
            .editableSelect()
            .on('select.editable-select', function (e, li) {
               advSearchTitleForBookId=li.val()
               alert(advSearchTitleForBookId)
            });

});

</script>

<div class="advEntityClass editableSelectClass"><label for="sBook">Title</label>
        <select id="sBook" class="editable-select">
            <c:forEach var="bl" items="${bookList}">
                <option value="${bl.id}">${bl.title}</option>
            </c:forEach>
        </select></div>

让我们来看看书桌上的书;
$(函数(){
$('#sBook').editableSelect();
$(“#sBook”)
.editableSelect()
.on('select.editable select',函数(e,li){
adveSearchTitleForbookid=li.val()
警报(advSearchTitleForBookId)
});
});
标题
${bl.title}
*我获取id,但随后获取VM1388:14未捕获类型错误:无法读取未定义错误的属性“val”*


用过

在脚本中使用window.onload确保dom已加载。在使用
li.val()
之前,请检查
li
是否为
null
/
未定义的
,因为这是一个jquery/js问题,您能否提供呈现的html,然后将其转换为代码段。您正在调用
.editableSelect()
在同一个元素上调用两次-不知道这是否是一个问题,但链接中的示例仅调用一次。值得检查。@freedomn如何检查,我不能。我使用了警报-因为检查以获取id。如果我写入警报,则获取相同的错误