Если вы переместите ссылки на скрипт для jQuery вниз страницы до тега закрывающей формы. Это решит проблему в Sitefinity 4.0, но я подозреваю, что это также исправит эту проблему в Sitefinity 3.7.
отестировали функцию автозаполнения Jquery UI (jquery-ui-1.8.10.custom.min.js) на простой HTML-странице, которая сработала.
Затем мы копируем тот же код в пользовательский элемент управления Asp.net, и он перестает работать. Ошибка Javascript гласит: «$ searchBox.autocomplete не является функцией».
Этот пользовательский элемент управления используется в проекте Asp.net Sitefinity 3.7. На странице есть ScriptManager. Не уверен, что еще я могу добавить ...
Кто-нибудь знает, что происходит?
Ammend:
<script src="/js/jquery-1.5.min.js" type="text/javascript"></script>
<script src="/js/jquery-ui-1.8.10.custom.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var termTemplate = "<span class='ui-autocomplete-term'>%s</span>";
$('input#searchInput').autocomplete({
source: ['johannesburg z', 'johannesburg x', 'johannesburg v', 'johannesburg b', 'johannesburg a', 'johannesburg q', 'johannesburg u', 'johannesburg y', 'johannesburg o', 'johannesburg p'],
minLength: 3,
open: function (e, ui) {
var
acData = $(this).data('autocomplete'),
styledTerm = termTemplate.replace('%s', acData.term);
acData
.menu
.element
.find('a')
.each(function () {
var me = $(this);
me.html(me.text().replace(acData.term, styledTerm));
});
}
});
});
</script>
<div class="outerSearchBox">
<div class="searchFieldWrapper">
<input id="searchInput" type="text" class="searchField" /><a class="searchButton">SEARCH
</a>
<div class="searchSugContainer">
Благодарю.