我很确定我在这里遗漏了一些简单的东西,但这让我发疯了!
这不是我在 PHP 中使用的第一个表单,而是第一次提交隐藏值。
单击菜单项时,我想将页面提交给自身-设置一个简单的参数,因此 php 代码进行处理。
页面提交正常,但我设置的隐藏变量不能通过 _GET、_POST 或 _REQUEST 获得。它应该是 _GET 因为这是我设置的方法。
如果有人能发现我出错的地方,这里是代码..
paramCustom是我正在尝试设置和处理的代码。
菜单是一系列 DIV 和锚点:
<a href="" onclick="activateMenu('option-xyz');">Option Xyz</a>
activateMenu javascript 函数是:
function activateMenu(optionTaken)
{
// Set the hidden variable
document.getElementById('paramCustom').value = optionTaken;
// Display it to confirm it is set correctly
var tt = document.getElementById('paramCustom').value;
console.log("paramCustom set to : " + tt);
// Submit the form
document.getElementById('linkSubmit').submit();
return false;
}
表格是这样编码的:
<form method="get" action="showProducts.php" id="linkSubmit">
<input type="hidden" id="paramCustom" name="paramCustom" />
<input type="submit" tabindex="-1" style="display:none;" />
</form>
在同一页面的 php 中,我试图将它们吐出来,但它们都显示为空白!
echo "paramCustom get is : ".$_GET['paramCustom']."<br/>"; // This should work
echo "paramCustom request is : ".$_REQUEST['paramCustom']."<br/>";
echo "paramCustom post is : ".$_POST['paramCustom']."<br/>";