Badri Yogesh Ответов: 1

Используя autosearch textbox in layout page &jQuery code jason method call in controller, он отлично работает на индексной странице, но не на других страницах, и я


Я использую autosearch textbox in layout page &jquery code jason method call in controller, я могу автоматически искать динамические значения из базы данных на домашней странице, но когда значение выбрано и перенаправлено на конкретную страницу, там autosearch не работает(jquery не вызывает метод jason).Я попытался также удалить другие файлы javascript и взять новый файл представления.
("Текстовое поле Autosearch работает на домашней странице, но когда оно перенаправляется на другое представление, автоматический поиск в текстовом поле не происходит.")
Hi saineshwar,i checked through console and the problem is it is not correctly routing to controller and action.below is my routing order.please check it.
 var uri = "Home/GetCountry";
<http://localhost:1673/Products/Home/GetCountry?countryName=s Failed to load resource: the server responded with a status of 404 (Not Found)


Я поместил autosearch на страницу макета и оттуда, где когда-либо переходил к другим представлениям, я должен перенаправить на метод "home" - controller и "getcounrty" - jason.Предложите с правильным порядком маршрутизации.Спасибо

Что я уже пробовал:

мой код jquery:






текстовое поле var;
selectValue ВАР ;

$(функция () {

textbox = $("#txtCountrty");
selectValue = $('ul#selectedValue');

textbox. on ("input", функция () {
getAutoComplete(textbox. val());
});
});
функция getAutoComplete(countryName) {
var uri = " Home / GetCountry";



$. getJSON(uri, { countryName: countryName })
.сделано(функция (данных) {
selectValue.html("");

var count = 0;
$. each(данные, функция (ключ, элемент) {

ВАР ли = $('&ЛТ;ли/&ГТ;').добавление('пользовательский интерфейс-меню-пункт').буква attr('роль', 'меню')
.код HTML("&амп;ЛТ;а href=" функция onclick=\"помощью setText('" + номенклатура + "')\"&ГТ;" + номенклатура + "&ЛТ;/а&ГТ;")
.appendTo(selectValue);

считать++;
});
});
}
функция setText(текст) {
textbox. val(текст);
getAutoComplete (текст);
}




метод Джейсона:


public JsonResult GetCountry(string countryName)
{


    MySqlConnection Con = new MySqlConnection(ConfigurationManager.ConnectionStrings["Mysqlcon"].ConnectionString);




    DataTable dt;


    var ds = new DataSet();

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Вы просто устанавливаете некоторый текст по щелчку выбранного элемента. Я не вижу никакого другого кода для перенаправления и отображения какой-то другой страницы.

В чем именно заключается проблема?

Saineshwar Bageri

Пожалуйста, загляните в консоль браузера, есть ли в ней какая-либо ошибка ?

1 Ответов

Рейтинг:
2

F-ES Sitecore

var uri = "Home/GetCountry";


Это означает доступ к GetCountry в подпапке текущего uri под названием Home. Поэтому, если вы находитесь в корне сайта, вы находитесь в "/", Поэтому он получает доступ к "/ Home / GetCountry", что правильно. Если вы находитесь, скажем, в "Product/Detail", то он попытается получить доступ к "Product/Details/Home/GetCountry", что неверно.

Используйте @Url. Action, чтобы получить действительный url-адрес для вызываемого действия (google for syntax) или в противном случае просто добавьте косую черту к url-адресу

var uri = "/Home/GetCountry";


а это значит всегда искать дом в корне.