好吧,Javascript 对我来说是新的,但我不认为它会导致这样的问题。要么我做错了,要么我应该使用 cookie。
我正在尝试使用 javascript 通过链接将 POST 数据提交到 php 页面。我之前问过一个关于如何传递这样的数据的问题,除了 AJAX 之外,它基本上可以归结为制作一个隐藏表单并让 javascript 提交它。我现在对 AJAX 或 Jquery 一无所知,所以我坚持使用表单方法。
但由于某种原因,代码没有发布我的数据。我一直不明白为什么,直到我不小心连续点击了两次,然后数据就显示出来了。
该场景是链接将您带到数据所在的页面,并且数据通过 var_dump 进行处理和显示。
这是必要的编码。
function red()
{
alert('This is happening');
document.traf.traf2.value = 3;
document.traf.submit();
}
和
echo "<form name='traf' method='post' action='newphpwriterthing.php'><input type='hidden' name='traf2' /></form>"; //FORM SET
echo "<a href='newphpwriterthing.php' onClick='red()'> <img src='red.png' height='150' /></a>";
这个函数似乎调用得很好,但我的印象是值和提交没有做任何事情......直到我意外地点击了它两次并且它完全做了它应该做的事情。
我还尝试单击一次进入该页面,然后刷新多次以查看该值是否“尚未存在”。没什么。
这是怎么回事以及如何修复它?我使用 cookie 会更好吗?
最佳答案
您的链接有一个 href,因此它只会将您带到该 URL。
将 return false;
添加到 red
函数的末尾。
或者也许你应该将 onClick='red()'
更改为 onClick='red() return false;'
- 对于某些人来说并没有这样使用它时间。
关于php - POST 直到第二次才起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10223308/