我遇到了一点问题
我的表单包含3个隐藏控件,我通过jquery发送值。在我保持警觉的同时它的工作正常。
我正在使用FormCollection并尝试在.cs文件中检索这些隐藏的值,但我无法退出这些值。当我在FormCollections上保留断点时,它显示所有隐藏的控件名称,包括键号。
查看:
<tr>
<td colspan ="2">
@Html.Hidden("hdnddlid")
@Html.Hidden("hdnrblMale")
@Html.Hidden("hdnrblFeMale")
</td>
</tr>
<script type="text/javascript">
$(document).ready(function () {
$("input[name='Gender']").change(function () {
if ($("input[name='Gender']:checked").val() == '1') {
hdnrblMale = "Male";
}
else if ($("input[name='Gender']:checked").val() == '0') {
hdnrblFeMale = "FeMale";
}
});
});
</script>
.cs文件中的代码
public static void InsertPersonalDetails(PersonalDetails modelPersonal, FormCollection frmHdnValues)
{
try
{
PersonalDbContext db = new PersonalDbContext();
string Male = frmHdnValues["hdnrblMale"].ToString();
string Female = frmHdnValues["hdnrblFeMale"].ToString();
db.Entry(modelPersonal).State = EntityState.Added;
//pDetails.Add(Objpd);
db.SaveChanges();
// return pDetails;
}
由于
答案 0 :(得分:2)
我错过了什么或者你的jQuery不需要:
$("input[name='hdnrblMale']").val("Male");
而不是
hdnrblMale = "Male";
还要确保字段位于正在提交的表单中。
我使用
的组合调试这种类型的东西..这样你应该可以看到链的所有部分。
答案 1 :(得分:0)
尝试隐藏输入类型并在控制器中写入request.form["FieldName"]
。这适用于我的情况