Javascript 仅在IE11中存在未定义的JS错误

Javascript 仅在IE11中存在未定义的JS错误,javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我只在IE11中得到这个错误。基本上,单击按钮不起作用,我得到: SCRIPT5009: 'search' is undefined 呼叫代码为: <div> <p><b>Surname search:</b></p> <input id="searchBox" name="Search" placeholder="Search" type="text" value="" /> <but

我只在IE11中得到这个错误。基本上,单击按钮不起作用,我得到:

SCRIPT5009: 'search' is undefined
呼叫代码为:

<div>
   <p><b>Surname search:</b></p>
      <input id="searchBox" name="Search" placeholder="Search" type="text" value="" />
      <button onclick="search()">Search</button> 
           <div class="fa fa-circle-o-notch fa-spin" id="spinner" style="display: none;">
           </div>
</div>
 <button onclick="search()">Search</button>
这在Chrome、Edge和Mozilla中运行良好

最后,JQuery库:

    <script src="/Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>

非常感谢您的帮助

我的解决方案。我把它放在这里,因为它是从许多评论中得出的

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js" type="text/javascript"></script>

<script>
    window.jQuery || document.write('<script src="~/Scripts/jquery-3.3.1.min.js"><\/script>')
</script>

<script type="text/javascript">
function search() {
    showSpinner();
    var searchString = $('#searchBox').val();
    $.ajax({
        type: "POST",
        url: '/Search',
        data: ({ name: searchString}),
        dataType: 'html',
        success: updateTable
    });
}
</script>

<script type="text/javascript">
   $('#btnSearch').click(function () {
       search();
   });
</script>

window.jQuery | | document.write(“”)
函数搜索(){
showSpinner();
var searchString=$('#searchBox').val();
$.ajax({
类型:“POST”,
url:“/Search”,
数据:({name:searchString}),
数据类型:“html”,
成功:可更新
});
}
$('#btnSearch')。单击(函数(){
搜索();
});
因此,我:

1) 升级到最新JQuery版本

2) 整理出我的搜索功能: 成功:可更新

3) 正确使用JQuery处理单击事件


感谢大家。

全局名称空间很奇怪。如果将函数名更改为“xxxsearch”而不是“search”,会发生什么情况?原因#562为什么永远不应该使用内联事件处理程序,尤其是当您已经在使用jQuery时<代码>和
$(“#myButton”)。在(“单击”,函数()…)
上,
success:response=>updateTable(response)
在IE11中不起作用。IE11不支持ES6语法为什么不仅仅是
success:updateTable,
如果在表单中,表单也会被提交,除非您添加
type=“button”
或使用默认值
    <script src="/Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js" type="text/javascript"></script>

<script>
    window.jQuery || document.write('<script src="~/Scripts/jquery-3.3.1.min.js"><\/script>')
</script>

<script type="text/javascript">
function search() {
    showSpinner();
    var searchString = $('#searchBox').val();
    $.ajax({
        type: "POST",
        url: '/Search',
        data: ({ name: searchString}),
        dataType: 'html',
        success: updateTable
    });
}
</script>

<script type="text/javascript">
   $('#btnSearch').click(function () {
       search();
   });
</script>