我需要在返回的搜索結果中突出顯示搜索詞嗎? 我搜索了很多,閱讀大量的文章,但所有的人都從我的結構使用AJAX突出顯示ASP.NET MVC返回結果中的搜索詞
這裏有很大的區別是我的控制器
public ActionResult Help(string searchString)
{
var repsearch = new RepositorySearch();
List<Question> question = new List<Question>();
if (!string.IsNullOrEmpty(searchString))
{
question = repsearch.GetAllQuestion().Where(n => n.Qu.Contains(searchString)).ToList();
}
return Request.IsAjaxRequest() ? (ActionResult)PartialView("_QuestionPartial", question) : View(question);
}
這裏是我的ajax
$('#FormSearch').submit(function (event) {
event.preventDefault();
var url = '/Home/Help?' + searchString;
$.ajax({
url: url,
type: 'POST',
cache: false,
data: { searchString: $('#search').val(); },
success: function (result) {
window.history.replaceState("#intagsname", "Title", url);
$('#intagsname').html(result);
}
});
});
這裏_QuestionPartial
@using iranhoidaytour_com.Models
@if (Model.Count > 0)
{
<ul>
@foreach (Question q in Model)
{
<li>
<h5>@q.Qu</h5>
<p>@q.Ans</p>
</li>
}
</ul>
}
我該如何突出顯示關鍵字返回搜索結果中的期限?
這裏是我的主視圖HTML
<div class="row" id="searchhelp">
<div class="container">
@using (Html.BeginForm("Help", "Home", FormMethod.Get, new { @id = "FormSearch", @class = "form-group container" }))
{
@Html.TextBox("search", null, new { @class = "form-control col-md-10", @placeholder = "What Is Your Question?Enter Keyword!" })
<button type="submit" class="left " id="btn-search">
<i class="fa fa-search" aria-hidden="true"></i>
</button>
}
</div>
</div>
<div id="helpicons" class="container">
<div id="tagsname">
<div id="intagsname">
@Html.Partial("_QuestionPartial", Model)
</div>
</div>
</div>
不相關,只是使用'data:{searchString:$('#search')。val(); },'(並刪除'event.preventDefault();'和'$ .ajax之間的所有內容({'然後在控制器中刪除'searchString = Request [「search」];'(方法中的參數將會正確綁定) –
你想如何「突出顯示」這些項目? –
我不知道如何突出顯示,但只是添加一個讓大詞彙變得更大膽或更改顏色就足夠了的類,感謝您的幫助我應該編輯我的整個代碼?@StephenMuecke –