这很奇怪。当我直接打开它时,这段代码运行良好 - 但是如果我运行之前的网页则没有。这段代码是一个确认页面,我想在结帐过程中跳转 - 我有我的所有字段,而且我不需要再次要求用户进行确认,所以我直接将她发送给结帐,发送所有的值字段。
同样,当我从另一个表单帖子到达此页面时它不起作用 - 尽管没有其他字段或对象被发送到此页面被称为表单 - 。有什么想法吗?
<?php include 'security.php' ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Secure Acceptance - Payment Form</title>
<link rel="stylesheet" type="text/css" href="payment.css"/>
</head>
<body>
<?php
foreach($_REQUEST as $name => $value) {
$params[$name] = $value;
}
?>
<p>Redirecting to Secure Server...</p>
<form action="https://testsecureacceptance.cybersource.com/pay" method="post" id="formulario" name="formulario" />
<?php
foreach($params as $name => $value) {
echo "<input type=\"hidden\" id=\"" . $name . "\" name=\"" . $name . "\" value=\"" . $value . "\"/>\n";
}
echo "<input type=\"hidden\" id=\"signature\" name=\"signature\" value=\"" . sign($params) . "\"/>\n";
?>
<input type="submit" id="boton" name="boton" value="Ir a Checkout >>"/>
</form>
<script type = "text/javascript">
document.getElementById('formulario').submit();
</script>
</body>
</html>
答案 0 :(得分:0)
您可以使用JavaScript setTimeout
方法在页面加载时延迟提交功能,或者您也可以使用jQuery等待文档加载,之后您可以触发表单提交功能:
JS:
setTimeout(function(){
document.getElementById('formulario').submit();
},1000);
jQuery的:
$(document).ready(function(){
$('#formulario').submit();
})