gpt4 book ai didi

javascript - 将数据发送到部分 View

转载 作者:行者123 更新时间:2023-11-30 16:36:53 25 4
gpt4 key购买 nike

想要使用返回数据的部分 View 来实现搜索功能。

我的 html:

<select id="searchSelect">
<option value="All">All</option>
<option value="Title">Title</option>
<option value="Category">Category</option>
<option value="ISBN">ISBN</option>
</select>

@Html.DropDownList("Categories", "Select Category")
<input type="text" id="SearchBy" placeholder="sometext" />
<a href="javascript:void(0);" class="search">Search</a>

现在,如何将这些值传递给部分 View ?? - 以及如何加载部分??

我做了这个功能:

$(document).on("click", ".search", function () {
var searchBy = $("#searchSelect option:selected").val();
if (searchBy == "All") {
var text = $("#SearchBy").val();
$.ajax({
type: "POST",
url: "Search",
data: JSON.stringify({ "data": text }),
success: function (r) {
$(".load").html(r.data);
}
});
}
});

但我意识到这样我应该使用 JSON。

最佳答案

您必须在默认 Controller 中实现Search 操作以返回PartialViewResult,然后在ajax 请求的成功回调中您将收到所需的html。

Ajax 调用:

[ ... ]

var text = $("#SearchBy").val();
$.ajax({
type: "POST",
url: "Search",
contentType: "application/json", // Specify the content type
data: JSON.stringify({ "data": text }), // Here you pass data to the controller's action
success: function (response) {
$(".load").html(response);
}
});

[ ... ]

HomeController 中的搜索操作:

public ActionResult Search(string data)
{
// Here use data, call some service or whatever
MyModel myModel = myService.GetMyModel();

[ ... ]

return PartialView(someModel);
}

Search.cshtml 局部 View :

@model MyModel

@{
Layout = null;
}

<h1>@Model.Prop1</h1>
<h2>@Model.Prop2</h2>

[ ... ]

关于javascript - 将数据发送到部分 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32593217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com