функция поиска не прямо прямо - PullRequest
0 голосов
/ 20 мая 2019

Я занимаюсь разработкой проекта asp.net mvc.в функции поиска с использованием jquery ajax не направлен вправо

в форме поиска я отправляю ключевое слово с помощью jquery ajax, оно должно перейти к http://localhost:54088/Home/Search?q=Demo, оно будет работать отлично, вместо этого оно перейдет к http://localhost:54088/?q=Demo что не правильно и я пытался установить полный URL http://localhost:54088/Home/Search?q=Demo в вызове ajax я не работал

html

<form class="form-inline my-2 my-lg-0" id="SearchForm">
  @Html.TextBox("q", null, new { @class = "form-control mr-sm-2", @placeholder 
  = "Search", id = "searchinput" })
  <input type="submit" class="btn btn-outline-danger my-2 my-sm-0" 
  value="Search" />
</form>

java-скрипт

$("#SearchForm").submit(function () {
    SearchFormjs();
});
function SearchFormjs() {
    var searchinput = $("#searchinput").val();
    $.ajax({
        url: "/Home/Search",
        data: searchinput,
        type: "GET",
        contentType: "application/json;charset=utf-8",
        dataType: "json",
        success: function (result) {
            console.log("send");
        },
        error: function (errormessage) {
            console.log(errormessage);
        }
    });
}

Домашний контроллер

public ActionResult Search(string q){
    var result = _db.DomesticsMaterialCost.Where(x=>x.ItemName.Contains(q)).ToList();
    return View(result);
}

ожидаемый результат ajax вызывает этот URL http://localhost:54088/Home/Search?q=Demo фактический результат ajax вызывает этот URL http://localhost:54088/?q=Demo что неверно

1 Ответ

0 голосов
/ 20 мая 2019
@using (Html.BeginForm("Search", "Home", FormMethod.Get))
{
 @Html.TextBox("q", null, new { @class = "form-control mr-sm-2", @placeholder = "Search", id = "searchinput" })
 <input type="submit" class="btn btn-outline-danger my-2 my-sm-0" value="Search" />
}


$("#SearchForm").submit(function () {
                e.preventDefault();
                    // disable button
                    $.ajax({
                        url: this.action,
                        type: this.method,
                        data: $(this).serialize(),
                        success: function (result) {
                            ///
                        }
                    });

            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...