我对asp.net 和MVC 很陌生。
我试图使用 json 请求并填充一些文本框。
但我注意到当我使用 json 时,我无法访问视图中其他文本框的值。例如
string s2 = Request.Form["selectedTestCategory"];
当我调试时会生成 s2 = null。但是如果我在页面上放了一个提交按钮,则该值不为空。(到目前为止,我知道我只能将一个参数传递给控制器中的 JSON 方法)
我的问题是当我开始一个 json 请求时会发生什么?以及为什么我无法从 Request.Form[...]
谢谢,
更新:
这是我的 json
<script>
$(document).ready(function() {
$('select#testStationUniqueId').change(function() {
var testStation = $(this).val();
$.ajaxSetup({ cache: false });
$.ajax({
url: "TestInput/getTestStationInformation/" + testStation,
type: 'post',
success: function(data) {
$('#driveDetailDiv').empty();
for (var i = 0; i < data.length; i++) {
$.post('TestInput/Details/', { id: data[i] }, function(data2) {
$('#driveDetailDiv').append(data2);
});
}
}
});
});
});
这是在我的控制器中
public PartialViewResult Details(string id)
{
//DriveDetails t = new DriveDetails(id);
//return PartialView("DriveDetailsPartial", t);
test_instance_input_model ti = new test_instance_input_model();
string s2 = Request.Form["selectedTestCategory"];
repository.setTestInstanceAttributes(ti, id);
return PartialView("TestInstancePartial", ti);
}
s2 在详细信息中为空,但如果我使用提交按钮,它将具有正确的值。
所以我试图弄清楚为什么当我发送一个json请求时它是空的。