![](/img/trans.png)
[英]Strange thing happening with modal input fields (Javascript / xhttprequestheader) writing to mysql but only for > 0 char in string?
[英]strange happening with writing a script
我单击页面中的链接,然后使用以下脚本完成javascrpt中的函数:
<script>
function useraccess()
{
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++){
if (inputs[i].type == "button"){
inputs[i].style.visibility = "hidden";
}
}
}
</script>
并采用以下形式:
<?php
if(!$_SESSION['isadmin'])
{
echo '<script>useraccess();</script>';
}
?>
如果我通过单击我在很短时间内编写的链接来运行它,它将向我显示按钮,然后它们将隐藏起来! 如果我把我写的<script>
前一行包括在内
<script type="text/javascript" src="file.js"></script>
这行代码:我的代码没有问题,当我单击链接时,它将隐藏我的按钮
我看不到“短时间后”它们会隐藏的按钮
我的意思是它们“是”隐藏的,即使很短的时间我也看不到它们
我很偶然地解决了我的问题! 因为我没有file.js! 我只是尝试一下。
对我来说这很有趣,我渴望知道原因是什么?
您的PHP代码将在HTML页面中生成以下代码:
<script> useraccess(); </ script>
这将在页面加载时运行,并且将隐藏所有按钮。 确切的发生时间将取决于该行所在页面的位置。 但是运行它与任何按钮都没有关系。
自从您谈论放入表单以来,我猜您以为使PHP代码生成Java脚本会影响您的页面。 不会的 当浏览器显示页面时,PHP已经完成。 您需要使用一些Javascript来观察按钮的单击。
(如果我误解了您的意图,对不起)。
在OP回复后进行编辑 :
哦,我懂了。 因此您确实希望按钮从一开始就被隐藏,但是它们是先出现然后被隐藏的吗?
我认为问题出在页面加载带有按钮的表单后,“ useraccess”功能才运行。
更好的方法是更改您的PHP,以便根本不输出按钮或禁用按钮。 如果用户没有特权,则它们根本不会出现在页面上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.