2014-03-04 120 views
1

所有我想要從MVC視圖從窗體傳遞一個JavaScript變量到控制器。 這是我自己選擇的文本變量,我想傳遞給控制器​​,以便我可以檢索並保存在Database.Any幫助將不勝感激我共享我想要的代碼如何將JavaScript變量傳遞給MVC中的控制器從視圖

查看 - >我正在選擇我想文本值傳遞給控制器​​

$(document).ready(function() { 
    $("#stateID").change(function() { 
     var state= $('#stateID :selected').text(); 
     getCities(state); 
    }); 
}); 

現在我想通過這個狀態變量從一個MVC形式

@using (Html.BeginForm("Register", "Registration", FormMethod.Post)) 
{ 
    <input type="submit" value="Save" style="text-align:center" /> 
} 

現在的控制器,這就是我想要檢索

我的控制器代碼
[HttpPost] 
public ActionResult Register(RegisterModel Regmodel) 
{ 
    if (ModelState.IsValid) 
    { 
     return View(); 
    } 
} 

感謝@Rondles我現在的問題是解決了,感謝你們爲UR快速resonse

+0

使用AJAX調用控制器,並通過您的參數 – Zaki

+0

@zaki其實我不想去,因爲阿賈克斯我也可以通過其他控件也可以通過json我不想發送。 – Rahul

回答

6

你可以設置你的形式的隱藏字段的狀態(我假設狀態是你的RegisterModel的屬性? ),並在你的stateID.change函數中將它賦值給隱藏字段以供它在提交時傳遞。

如:

形式隱藏字段設置了(你開始表單代碼中):

@Html.HiddenFor(model => model.StateID, new { id = hiddenStateID" })

那麼你的jQuery會(未經測試,這是更pseduo代碼給你的想法):

$(document).ready(function() 
{ 
     $("#stateID").change(function(){ 
      var state= $('#stateID :selected').text(); 
      getCities(state); 
      $("#hiddenStateId").val(state); 
     }); 
}); 
+0

可以請你分享一些示例代碼來實現這個 – Rahul

+0

請看我更新的答案。 – BenM

+1

嗨@Rondles感謝您的代碼,它爲我工作,我的問題已解決......真的感謝您的快速回復 – Rahul

相關問題