我有這段代碼。使用JavaScript提交表單,在FF中工作,但在IE中不工作
下面的代碼工作在Firefox,但它不是在IE
<?php // file: login_dfr.php ?>
<body>
<?php
$data = getLoginData($_SESSION['whoyouare']);
?>
<form name="frm_redirect_dfr" action="<?php echo $data['url']; ?>" method="POST" id="frm_redirect_dfr" style="display: none;">
<input name="DFRNet_User" value="<?php echo $data['username']; ?>" type="hidden" />
<input name="DFRNet_Pass" value="<?php echo $data['password']; ?>" type="hidden" />
<input name="tbllogin" value="login" type="hidden" />
<input type="submit" value="submit" />
</form>
<script language="javascript" type="text/javascript">
document.forms["frm_redirect_dfr"].submit();
</script>
</body>
我想要做的是,當用戶訪問該頁面時,它首先會嘗試獲取登錄數據,回聲它表格,並提交表單自動使用JavaScript
更新: 我忘了提,上面的代碼是一個框架,大型機代碼象下面這樣:
<?php session_start(); ?>
<?php // file: login_frame.php ?>
<!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>Wavinet</title>
</head>
<frameset rows="1,*" frameborder="no" border="0" framespacing="0">
<frame src="topFrame.php" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frame src="login_dfr.php" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
<noframes>
<body>This page contain frame</body>
</noframes>
</html>
感謝您的答案staticscan,但是當我嘗試你的代碼,它不起作用,動作URL仍然顯示「你必須登錄」頁面。我將數字更改爲5000. 我也嘗試使用jquery,但它也不起作用 我的想法出現了一個新問題,即發送到操作URL的發佈數據。我已經使用LiveHTTPHeader在Firefox上檢查它,發送發佈數據。我不知道如何在IE上調試HTTP頭,因爲沒有用於IE的LiveHTTPHeader – Permana 2010-04-22 04:38:21
好吧,所以你需要在服務器端代碼中進行調試。首先,使用View Source來驗證表單標籤的動作參數是否轉到了正確的URL。然後使用'print_r($ _ POST);退出;'確切地告訴你服務器正在發送什麼。 – staticsan 2010-04-23 01:03:00
表單數據已提交。發送POST數據,我只是使用fiddler – Permana 2010-04-29 03:06:37