首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在.NET中发布无线电按钮

如何在.NET中发布无线电按钮
EN

Stack Overflow用户
提问于 2017-01-12 16:10:18
回答 1查看 805关注 0票数 0

我试图用下面的代码从单选按钮中发布值。

代码语言:javascript
复制
@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>
}

有一个基本的邮政表格

代码语言:javascript
复制
[HttpPost]
public ActionResult RdButton(string HomeShow = "")     
{
    string rdValue = HomeShow;
    return View(rdValue);
}

如何引用html中的值?提前感谢

编辑:将格式更改为

代码语言:javascript
复制
@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"); 
     }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-12 16:28:18

要在单选按钮更改时发布表单,需要一些javascript代码。下面是如何使用jQuery来完成这一任务:

代码语言:javascript
复制
$('input[type=radio]').on('change', function() {
    $(this).closest("form").submit();
});

这段代码将提交单选按钮所在的表单。

如果我是你,我会创建一个模型,并将该模型传递给我的视图,并为它创建单选按钮。如下所示:

代码语言:javascript
复制
public class HomeShowModel 
{
    public string SelectedHomeShow { get; set; }
    // Other properties you may need
}

然后,在您的视图中,可以使用html帮助程序为您创建单选按钮组:

代码语言:javascript
复制
@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");

使用模型可以这样做:

代码语言:javascript
复制
if (Model.SelectedHomeShow == "StockParts") { // code... }

但是,请记住将模型传递给您的视图,并确保设置了SelectedHomeShow属性。一种更好的方法是使其读起来像一条业务规则,因此在您的模型中,您可以为该特定规则拥有另一个属性:

代码语言:javascript
复制
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";
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41617915

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档