0

HTML.Hidden 是否有大小限制?我有以下代码,当我只放 ViewData["key"]="12345" 但当“12345 数据过多时 htmlfield 为空”时有效。

 @Html.Hidden("hid" + param.Parameter.Name, ViewData["hid"+param.Parameter.Name])

当我在 javascript 函数中添加 ViewData["hid"+param.Parameter.Name] 以提醒值时,整个字符串就在那里。

亲切的问候

4

1 回答 1

1

如果您使用 HTTP POST 动词提交表单,则限制由web.configmaxRequestLength中元素的属性控制。<httpRuntime>默认值为 4096 KB:

<httpRuntime maxRequestLength="4096" />

例子:

@using (Html.BeginForm())
{
    @Html.Hidden("hid", string.Join("", Enumerable.Range(1, 40000).Select(x => "a")))
    <button type="submit">OK</button>
}

成功将所有 40K 上传a到服务器。

另一方面,如果您使用 HTTP GET 动词来提交表单,那么由于值是在查询字符串中发送的,因此会有一个限制。此限制因浏览器而异。IIRC 在 IE 中大约是 4K。

于 2011-12-22T08:32:29.067 回答