kavayo
سه شنبه 01 بهمن 1392, 18:45 عصر
من میخوام با کلیک بر روی منوی ورود یک پنجره باز بشه ودر اون یک پارشال ویو بارگذاری بشه که این پارشال ویو دارای دو تکست باکس و یک باتن جهت ورود به سایت است حال در این پارشال ویو زمانی که دکمه ورود را کلیک میکنم اگر کاربر اطلاعاتی وارد نکرده باشه یا اشتباه وارد کرده باشه صفحه پارشال ویو بزرگ میشه و کل صفحه رو میگیره حال من چطور این مشکل رو حل کنم؟
@model testmachine.Models.UserViewModel
<title>_myContent</title>
@using (Ajax.BeginForm("MemberLogin", "Home", new AjaxOptions { UpdateTargetId = "mytable", InsertionMode = InsertionMode.Replace, HttpMethod = "Post" }, new { id = "myform" }))
// using (Html.BeginForm("MemberLogin", "Home"))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div id="tt"></div>
<table style="width: 100%;" class="mytable" id="mytable">
<tr>
<td> نام کاربری :</td>
<td> @Html.TextBoxFor(p => p.username)
@* <input id="username" type="text" />*@
</td>
<td> @Html.ValidationMessageFor(p => p.username)</td>
</tr>
<tr>
<td> کلمه عبور :</td>
<td> @Html.TextBoxFor(p => p.username)
@*<input id="password" type="password" />*@
</td>
<td> @Html.ValidationMessageFor(p => p.password)</td>
</tr>
<tr>
<td > </td>
<td style="text-align:right;">
@*<input id="password" type="password" />*@
@Html.CheckBoxFor(p => p.RememberMe, new { style = "width:20px;" }) @Html.LabelFor(p => p.RememberMe)
</td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> <input id="Submit1" type="submit" value="ورود" class="cssButton" style="width:60px;text-align:center;height:38px;float:left;margin-left:40px;" /></td>
<td> </td>
</tr>
<tr><td><div id="mydiv">
<p>@TempData["Status"]</p></div></td></tr>
</table>
}
[HttpPost]
// [Authorize]
[ActionName("MemberLogin")]
public ActionResult Login(UserViewModel model, string returnUrl)
{
//if (!ModelState.IsValid)
// return PartialView("AjaxContent", model);
//else
// return null;
if (ModelState.IsValid)
{
if (Membership.ValidateUser(model.username, model.password))
{
FormsAuthentication.SetAuthCookie(model.username, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
&& !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("AjaxContent");
}
}
else
{
TempData["Status"] = "Invalid username or password";
return RedirectToAction("AjaxContent");
}
}
TempData["Status"] = "Invalid request";
//return RedirectToAction("AjaxContent", model);
return PartialView("_myContent");
}
@model testmachine.Models.UserViewModel
<title>_myContent</title>
@using (Ajax.BeginForm("MemberLogin", "Home", new AjaxOptions { UpdateTargetId = "mytable", InsertionMode = InsertionMode.Replace, HttpMethod = "Post" }, new { id = "myform" }))
// using (Html.BeginForm("MemberLogin", "Home"))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div id="tt"></div>
<table style="width: 100%;" class="mytable" id="mytable">
<tr>
<td> نام کاربری :</td>
<td> @Html.TextBoxFor(p => p.username)
@* <input id="username" type="text" />*@
</td>
<td> @Html.ValidationMessageFor(p => p.username)</td>
</tr>
<tr>
<td> کلمه عبور :</td>
<td> @Html.TextBoxFor(p => p.username)
@*<input id="password" type="password" />*@
</td>
<td> @Html.ValidationMessageFor(p => p.password)</td>
</tr>
<tr>
<td > </td>
<td style="text-align:right;">
@*<input id="password" type="password" />*@
@Html.CheckBoxFor(p => p.RememberMe, new { style = "width:20px;" }) @Html.LabelFor(p => p.RememberMe)
</td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> <input id="Submit1" type="submit" value="ورود" class="cssButton" style="width:60px;text-align:center;height:38px;float:left;margin-left:40px;" /></td>
<td> </td>
</tr>
<tr><td><div id="mydiv">
<p>@TempData["Status"]</p></div></td></tr>
</table>
}
[HttpPost]
// [Authorize]
[ActionName("MemberLogin")]
public ActionResult Login(UserViewModel model, string returnUrl)
{
//if (!ModelState.IsValid)
// return PartialView("AjaxContent", model);
//else
// return null;
if (ModelState.IsValid)
{
if (Membership.ValidateUser(model.username, model.password))
{
FormsAuthentication.SetAuthCookie(model.username, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
&& !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("AjaxContent");
}
}
else
{
TempData["Status"] = "Invalid username or password";
return RedirectToAction("AjaxContent");
}
}
TempData["Status"] = "Invalid request";
//return RedirectToAction("AjaxContent", model);
return PartialView("_myContent");
}