我正在处理具有动态生成标记的页面。因此,我不知道表单上有哪些可用字段。因此,POST 方法不是创建视图模型,而是使用 FormCollection。一旦收到 POST,程序就会快速运行。
我的问题:单击表单上的 SUBMIT 大约需要 10 - 15 秒才能在控制器中 POST 操作的第一行遇到断点。在我的场景中,表单上有 800 个输入字段。只为 800 个字段创建 FormCollection 真的需要这么长时间吗?有什么方法可以简化流程或缩短响应时间?
编辑:
IE 分析器表明大部分时间都花在了 JQuery CSS 选择器上。如果我删除所有 CSS,页面会很快运行。为什么 CSS 选择器在回发到服务器之前运行?我可以禁用它吗?
编辑 2:分析器现在显示在 JQuery 1.6.4.min.js 中花费的时间,函数是“k”。我认为这只是一个内部变量查找。我还发现从输入字段中删除“大小”和“最大长度”属性会使页面快速响应(万岁)......除了......我需要那些用于客户端验证。我仍在尝试寻找一种方法来提高速度,或者删除属性并保留一些方法来限制客户端字段的输入长度。
编辑 3:我研究了 jquery-1.6.4.min.js 并找到了函数 k。根据编辑 2,添加/删除 'maxlength' 和 'size' 属性会产生重大影响(33K ms 而不是 3k ms)。但是,函数 K 不应该做太多......因为那些不是 nodetype===1 并且第一个 IF 应该失败,在下一行返回函数。
function k(a,c,d)
{
if(d===b&&a.nodeType===1)
{
var e="data-"+c.replace(j,"-$1").toLowerCase();
d=a.getAttribute(e);
if(typeof d=="string")
{
try
{
d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)
}
catch(g){}
f.data(a,c,d)
}
else
d=b
}
return d
}