在表单提交后启用文本框和按钮.Net MVC 4
本文关键字:按钮 Net MVC 表单提交 启用 文本 | 更新日期: 2023-09-27 18:02:45
我想在表单提交后启用更新按钮。下面是我的代码:
视图:
@using (Html.BeginForm("ProcessTech", "Home", FormMethod.Post))
{
@Html.TextBoxFor(m => m.techNo, new { @class = "form-control maintain-text", placeholder = "Technician No..." })
<span class="input-group-btn">
<button type="submit" id="search" name="SubmitButton" value="search" class="btn btn-default">
<i class="fa fa-search"></i>
</button>
</span>
<td>First Name :</td>
<td class="display-field">@Html.TextBoxFor(m => m.firstName, new { @class = "form-control", style = "width:380px;", disabled = "disabled" })</td>
<td>Last Name :</td>
<td class="display-field">@Html.TextBoxFor(m => m.lastName, new { @class = "form-control", style = "width:380px;", disabled = "disabled" })</td>
<button name="SubmitButton" value="update" id="update" type="submit" style = "float:right;margin-right:10px; border-radius:5px;" class="btn btn-default" disabled><i class='fa fa-edit fa-fw'></i>Update</button>
}
更新按钮, firstname &lastname文本框有一个'disabled'属性。搜索技术员编号后,表单将更新为姓名&与技术编号对应的姓氏值。
现在我想删除更新按钮的禁用属性,firstname和lastname,以便可以编辑和更新。最好的方法是什么?
我试过了:
脚本:
$(document).ready(function () {
$("#search").click(function () {
$("#update,#firstName,#lastName").removeAttr("disabled");
});
});
它在表单提交时启用元素,但一旦表单提交,页面就会重新加载文本框中已有的值,并禁用元素。
当你将表单提交给控制器时,你可以在模型中返回一个值给视图,这将决定按钮是被禁用还是启用,或者你也可以使用@Viewbag。disableUpdate以便post后按钮正确呈现
<button name="SubmitButton" value="update" id="update" type="submit" class="btn btn-default" @ViewBag.disableUpdate ><i class='fa fa-edit fa-fw'></i>Update</button>
从控制器传递@ViewBag。disableUpdate="//启用
和@ViewBag.disableUpdate ="禁用";//启用
我根据Maneesh的回答修改了我的代码,下面是我得出的结论:
模型:
public bool setEnable { get; set; }
public IndexModel() { setEnable = false; } //constructor
控制器:
public ActionResult Index()
{
return View(new IndexModel());
}
[HttpPost]
public ActionResult ProcessTech(string SubmitButton)
{
IndexModel _oTechModel = new IndexModel();
switch (SubmitButton)
{
case "search": //search technician
{
_oTechModel.setEnable = true;
}
break;
}
return View("Index", _oTechModel);
}
视图:
@model Maintenance_.Models.IndexModel
@{
ViewBag.Title = "Technician";
if(Model.setEnable==true)
{
ViewBag.disableUpdate = "";
}
else{
ViewBag.disableUpdate = "disabled";
}
}
//HTML codes goes here..