【发布时间】:2019-05-23 11:31:09
【问题描述】:
在一个视图中,我有两个单选按钮:
@Html.RadioButtonFor(model => model.TipoVP, new String("VP_A".ToCharArray()), new { @checked = "checked" })
<span class="custom-control-label">Partial View A</span>
@Html.RadioButtonFor(model => model.TipoVP, new String("VP_B".ToCharArray()))
<span class="custom-control-label">Partial View B</span>
控制器的动作是这样的:
public ActionResult GetVistaParcial(string tipov)
{
if (tipov == null || tipov == "VP_A")
return PartialView("_PartialView_A");
else
return PartialView("_PartialView_B");
}
}
并调用控制器操作以根据所选单选按钮加载部分视图或另一个
@Html.Action("GetVistaParcial", "miControlador", new { tipov = "the value of checked RadioButton" } )
单选按钮更改事件的脚本为:
$("[name=TipoVP]").on('change', function () {
var $rb = $(this);
$.ajax({
url: '/miControlador/GetVistaParcial/',
data: { tipov: $rb.val() },
success: function (respuesta) {
$("#vistaparcial").html(respuesta);
}
});
});
如何将选中的单选按钮的值作为参数传递给操作?
它必须在执行 GET 和 POST 时工作
【问题讨论】:
-
能否请您出示您的脚本以致电
GetVistaParcial? -
我将脚本添加到问题中。谢谢
-
我已经在我这边尝试了您的代码,并且没有更改它按预期工作的任何内容。您是否在 get 方法中为您的模型创建了一个对象?
-
是的。但问题是当从 POST 返回时,“GetVistaParcial”方法的“tipov”参数始终为空。如果我使用选定的局部视图 B 启动 POST,当我返回时,会出现局部视图 A。
-
但是我收到了
tipov值VP_A和VP_B相对于在您的GetVistaParcial操作方法中单击的单选按钮。
标签: javascript c# jquery razor asp.net-mvc-5