2012-04-11 12 views
0

mvc3テキストボックスがクリックされた後に保持されます。 私のビューコード。送信ボタンをクリックした後に、オートコンプリートのテキストボックスは、MVC3で空であってはなりません

<div style="float: left"> 

States Filter : 

</div> 

<div style="float: left; padding-left: 10px"> 
    @Html.TextBox("Statestxt") 
</div> 

<div style="padding-left: 10px; float: left"> 
    <input type="image" value="submit" src="../../Images/FilterBrowse.gif" 
      alt="submit Button" />  
</div> 

マイコントローラ:空になり、ボタンのテキストボックスを提出クリックした後ここで

public ActionResult AutocompleteAsync(string term) 
{ 
    var suggestions = from s in Adm.states 
    select s.state_name; 
    var namelist = suggestions.Where(n => n.ToLower().StartsWith(term.ToLower())); 

    return Json(namelist, JsonRequestBehavior.AllowGet); 
} 



[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult States(state stateModel, string _stateName, 
    FormCollection formvalues) 
{ 
    AdmDataContext Adm = new AdmDataContext; 

    if (Request.Form["Statestxt"] == null) 
    { 
     ViewBag.Error = "Enter State Name."; 
     ViewData["name"] = false; 

     return View(); 
    } 
    else 
    { 
     _stateName = Request.Form["Statestxt"].ToString(); 
     var record = (from state in Adm.states 
         where state.state_name == _stateName 
         select state).Count(); 

     if (record == 0) 
     { 
      ViewBag.Error = "Enter Valid State Name."; 

      return View(); 

     } 

     var _Stateid = from state in Adm.states 
         where state.state_name == _stateName 
         select state; 

     int StateId = (int)_Stateid.First().state_id; 
     var state1 = am.FindUpcomingStates2(StateId).ToList(); 

     if (state1 != null) 
     { 
      ViewData["name"] = true; 
      return View("States", state1); 
     } 

    } 

} 

。テキストボックスのコードを空ではない方法で書くことができます。

ありがとうございました。

あなたはビューモデルを使用していないのはなぜ

答えて

0

public class StateViewModel{ 

public string StateTxt { get; set; } 

} 

、ビュー(かみそりビュー)に

@model StateViewModel 

@html.TextBox("StateTxt", Model.StateTxt) 

コントローラに

[HttpPost] 
public ActionResult States(StateViewModel model) 
{ 
//Do here what you want 

//Then put the text box empty 

model.StateTxt =string.empty; 

return View(model); 

} 

は、この情報がお役に立てば幸いです

関連する問題