iteye_13137 2009-12-17 14:08
浏览 239
已采纳

一个google chrome 浏览器的BUG

我有一个很简单的页面:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert title here</title>
</head>
<body>
<form action="date.html" target="_blank">
<input type="text" name='date'/>
<input type="submit" />
</form>
</body>
</html>

这个form可以提交一次,第二次就没有反应了!但是在firefox以及Ie里面没有任何问题!

  • 写回答

7条回答 默认 最新

  • shijiebao 2009-12-17 14:08
    关注

    chrome要求每次请求的路径都要唯一,在请求的路径后面加上一个随机参数就ok了
    [code="javascript"]
    function openPostWindow(url, keys, values) {
    var tempForm = document.createElement("form"), wname = 'temp';
    tempForm.id = "form_";
    tempForm.method = "post";
    tempForm.action = url + '?SeID=' + Math.random();
    tempForm.target = wname;
    if (keys && values) {
    if (keys.length == values.length) {
    for (var i = 0; i < keys.length; i++) {
    var hideInput = document.createElement("input");
    hideInput.type = "hidden";
    hideInput.name = keys[i];
    hideInput.value = values[i];
    tempForm.appendChild(hideInput);
    }
    } else {
    throw 'keys length not equals values length!';
    }
    }
    // openWin('about:blank',wname);
    document.body.appendChild(tempForm);
    tempForm.submit();
    document.body.removeChild(tempForm);
    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?