我的PHP代码在Firefox Mozilla中工作正常但在谷歌浏览器中没有。我的代码如下。
PHP:
$fee=0;
if($_POST['amount'])
{
$fee=$_POST['amount'];
}
else if($_POST['payprice'])
{
$fee=$_POST['payprice'];
}
else if($_POST['regfee'])
{
$fee=$_POST['regfee'];
}
else
{
$fee=0;
}
JavaScript代码
function submitpay()
{
document.forms[0].submit();
}
setInterval("submitpay()", 100));
HTML:
<form method="post" action="../customerpg/pg1/check.php">
<input type="hidden" name="showupdt" value="block" />
<input type="hidden" name="amount" value="<?php echo $fee; ?>" />
</form>
答案 0 :(得分:0)
使用
setInterval(submitpay, 100);
而不是
setInterval("submitpay()", 100)
首先,我认为您不能将函数调用作为字符串发送。其次不要将()
放在函数的末尾 - 它将立即执行函数,它将是传递给setInterval的函数的结果(除非该结果本身就是对函数的引用,它不起作用)。您应该传递的是该函数的引用,使用其名称。
将来,在执行任何其他操作之前,请检查您的浏览器控制台(按F12以获取开发人员工具)以查找错误。这将为您提供有关这些案例中发生的事情的重要线索。通常,您甚至可以单击失败的代码的行号,并查看问题的确切位置。
最后,关于你的问题措辞的技术观点。它不是 PHP ,它不起作用,因为PHP在服务器上运行,它是JavaScript(可能是,也可能不是,由你编写的某些PHP生成的,但这与此无关) case)这是问题。
答案 1 :(得分:0)
这实际上是可能的。
我遇到的一个案例,很可能会解决您的问题。
案例:该代码在本地主机的子域上运行,例如http://subdomain.localhost/project/
,并且某些代理插件(Browsec,Ultrasurf)正在运行。
在这种情况下,代码将无法运行。您可以停止插件,以使其正常工作。