【发布时间】:2010-06-17 19:18:29
【问题描述】:
我有这个代码,以及一个提交到框架的文件上传表单:
setMyCookie('name','value_1');
$('.myform').submit();
setMyCookie('name','value_2');
问题:Webkit 浏览器似乎在提交表单之前或在提交表单的那一刻将“MyCookie”更新为“value_2”,因此发送了错误的 cookie 值。 我想在提交表单后立即将 cookie 值更改为“value_2”,以便 cookie 准备好接受另一个请求。
以下代码运行良好,但我不认为使用 timeout() 是最好的解决方案。也许还有其他方法可以解决这个问题?
setMyCookie('name','value_1');
$('.myform').submit();
setTimeout(function(){setMyCookie('name',value_2);},100);
谢谢。
【问题讨论】:
-
如果我理解正确的话,我认为这个问题与您对问题的描述不符。这对我来说听起来像是一个 WebKit 错误,因为 JavaScript 执行应该在提交表单时停止,就像 David 说的那样。
-
我将表单提交到一个框架,因此 javascript 执行不会停止。
-
这不是使用类似延迟技术的可靠方法(调用 setTimeout())
标签: javascript jquery webkit callback submit