为什么Firefox在Safari中没有获得
我通过表单发送输入的内容,从第1页至第2页,使用按钮与action="page2.php"
:
<form method="get" id="chatform" action="page2.php">
<input type="text" style="margin-bottom:20px;" class="form-control" id="recipient" name="recipient" placeholder="username" value="">
</form>
按钮的形式外,但它包含它的名称:
<button type="submit" form="chatform" id="b9" style="font-size: 12px !important;" name="b9" class="buttonmenu toggleForms btn btn-secondary btn-block" style="float:left;">Chat</button>
我也很loadind使用javascript输入:
$(".buttonmenu").click(function(){
$('#recipient').val("hellooooo"); }
问题是,一切工作正常Safari浏览器,但在Firefox我不戈t变量$_GET['recipient']
中的任何内容,我不明白为什么。
在page1中只有表格串联,没有嵌套froms。在Safari中,一切都在第2页完美运行:我在URL和内容中获得了'收件人'变量的名称,在firefox中,我只在URL中获得'收件人'变量的名称,但变量为空 看来就像Firefox无法从服务器获取$_GET['recipient']
的内容,或者运行php操作IGNORING javascript。
有什么想法?
1)确保您的形式是不是(嵌套)另一种形式的元素,像这样内部: (也确保它不是内<tr>
,<td>
,或<table>
元素)
<form>
...
<form>
...
</form>
...
</form>
2)确保你的代码工作,下面的代码工作这么试试这个,看看它是否有差别
page1.php中:
<form action="page2.php" method="GET" id="chatform">
<input type="text" style="margin-bottom:20px;" class="form-control" id="recipient" name="recipient" placeholder="username" value="">
<input type="submit" name="submit" value="SUBMIT">
</form>
使page2.php:
$recipient = $_GET['recipient'];
echo $recipient;
3)尝试清除缓存和Cookie。有时候,形式可以打破accordinf这个问题问的Firefox helpc中心:
https://support.mozilla.org/en-US/questions/1144267
本文状态......
许多网站问题都可以通过腐败饼干或高速缓存引起的。
- 清除缓存
和删除饼干
警告! !这会将您注销到您登录的网站之外。 在地址栏中输入about:preferences。
饼干;选择隐私。在历史记录下,选择Firefox将使用自定义 设置。按下右侧的按钮Show Cookies。使用 搜索栏查找该网站。注意;可能有多个 条目。删除所有这些。
- Cache;选择高级>网络。从缓存的Web内容跨越 ,按立即清除。如果仍存在问题,请以安全模式启动Firefox {web link}应出现一个小对话框。 单击在安全模式下启动(不刷新)。当你处于安全模式时;
在地址栏中输入about:preferences#进阶。
在高级下,选择常规。查找并关闭使用硬件 加速。
4)请确保该文件的文件是100%正确的!确保它确实是page2.php
,也尝试以斜线的行动,在一开始就像这样:"/page2.php"
解决
火狐需要“事件”对象作为函数的PARAM。
这是该行:
$(".buttomenu").click(function(event) {.....
'动作= “chat.php”''VS行动= “使page2.php”'...所以...而且也没有提交按钮 –
道歉,它是action =“page2.php” - 只需在问题 – giuseppe
中纠正它,你如何将表单发送到该页面? –