我试图用下面的代码从单选按钮中发布值。
@using (Html.BeginForm("RdButton", "Search", FormMethod.Post))
{
<span style="white-space:nowrap;">
<input type="radio" id="HomeShow" name="HomeShow" value="AssemblyDrawings" checked/> Assembly Drawings
<input type="radio" id="HomeShow" name="HomeShow" value="RelatedLiterature"/> Related Literature
<input type="radio" id="HomeShow" name="HomeShow" value="StockParts"> List of stock parts
</span>
}有一个基本的邮政表格
[HttpPost]
public ActionResult RdButton(string HomeShow = "")
{
string rdValue = HomeShow;
return View(rdValue);
}如何引用html中的值?提前感谢
编辑:将格式更改为
@using (Html.BeginForm("RdButton", "Search", FormMethod.Post))
{
<span style="white-space:nowrap;">
@Html.RadioButtonFor(x => x.Show, "Assembly")
@Html.RadioButtonFor(x => x.Show, "Literature")
@Html.RadioButtonFor(x => x.Show, "Parts")
</span>
}
// would this work???
string rdobtn = String.Format("{0}", Request.Form["RdButton"]);
if (rdobtn == "")
{
@Html.Partial("_gotopage");
}发布于 2017-01-12 16:28:18
要在单选按钮更改时发布表单,需要一些javascript代码。下面是如何使用jQuery来完成这一任务:
$('input[type=radio]').on('change', function() {
$(this).closest("form").submit();
});这段代码将提交单选按钮所在的表单。
如果我是你,我会创建一个模型,并将该模型传递给我的视图,并为它创建单选按钮。如下所示:
public class HomeShowModel
{
public string SelectedHomeShow { get; set; }
// Other properties you may need
}然后,在您的视图中,可以使用html帮助程序为您创建单选按钮组:
@Html.RadioButtonFor(m=>m.SelectedHomeShow ,"AssemblyDrawings")
@Html.RadioButtonFor(m => m.SelectedHomeShow , "RelatedLiterature")
@Html.RadioButtonFor(m => m.SelectedHomeShow , "StockParts")控制器将接收所选择的值。
//这个有用吗? 字符串rdobtn = String.Format("{0}",Request.Form"RdButton");
使用模型可以这样做:
if (Model.SelectedHomeShow == "StockParts") { // code... }但是,请记住将模型传递给您的视图,并确保设置了SelectedHomeShow属性。一种更好的方法是使其读起来像一条业务规则,因此在您的模型中,您可以为该特定规则拥有另一个属性:
public class HomeShowModel
{
public string SelectedHomeShow { get; set; }
// Other properties you may need
// Name this property something meaningful
public bool NeedsPartial
{
return this.SelectedHomeShow == "StockParts";
}
}https://stackoverflow.com/questions/41617915
复制相似问题