I am using ASP.NET MVC 5. Here, when i click on the search bar it calls the java script function, and when i provide the searchString value to the form, and click SUBMIT, it doesn't submit anything. Why is that?
<script>
$(function () {
$('a[href="#search"]').on('click', function (event) {
event.preventDefault();
$('#search').addClass('open');
$('#search > form > input[type="search"]').focus();
});
$('#search, #search button.close').on('click keyup', function (event) {
if (event.target == this || event.target.className == 'close' || event.keyCode == 27) {
$(this).removeClass('open');
}
});
});
</script>
View:
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
@if (Request.IsAuthenticated)
{
@Html.ActionLink("TimeEntry", "Index", "TimeEntry", null, new {@class = "navbar-brand"})
}
else
{
@Html.ActionLink("TimeEntry", "Login", "User", null, new {@class = "navbar-brand"})
}
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>@Html.ActionLink("Clock In/Out(WIP)", "Index", "TimeEntry")</li>
<li>@Html.ActionLink("Time Summary", "BackEnd", "TimeEntry")</li>
<li>@Html.ActionLink("Users", "Index", "User")</li>
<li><a href="#search">Search</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
@if (Request.IsAuthenticated)
{
<li> @Html.ActionLink("Log Out", "Logout", "User")</li>
}
</ul>
</div>
</div>
</div>
<div id="search">
<button type="button" class="close" style="padding-top: 35px">x</button>
@using (Html.BeginForm("Search", "User", FormMethod.Get))
{
@Html.TextBox("searchString","", new {@placeholder = "Search by First Name"})
<button type="button" class="btn btn-primary">Search Rando</button>
}
</div>
<div class="container body-content">
@RenderBody()
<hr/>
<footer>
<p>© @DateTime.Now.Year - My TimeClock Application</p>
</footer>
</div>
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)
</body>
</html>
submitevent (twice!) -event.preventDefault();andreturn false;$('form').submit(function (event) {. But you have not shown your view so its difficult to understand what your really trying to do here.searchString? (rather than post and redirect) - in which case you would use ajax