Я получаю эту ошибку только в IE 11. В основном кнопка нажатия не работает, и я получаю:
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>
Это вызывает:
<script>
function search() {
showSpinner();
var searchString = $('#searchBox').val();
$.ajax({
type: "POST",
url: '/Search',
data: ({ name: searchString}),
dataType: 'html',
success: response => updateTable(response),
});
}
</script>
Ключевая строка проблемы в вызывающем коде:
<button onclick="search()">Search</button>
, которая создает ошибку:
SCRIPT5009: 'search' is undefined
Это прекрасно работает в 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>
Итак, я:
1) Обновлен до последней версии JQuery
2) Разобрался мойФункция поиска: success: updateTable
3) Правильно использовал JQuery для обработки события нажатия.
Спасибо всем.