PHP 脚本 JQuery 抓取了错误数量的元素
PHP script JQuery grabs wrong number of elements
我一直在使用 JQuery 到 show/hide 基于登录状态的元素,但是我 运行 得到了一些意想不到的结果,代码如下:
<script>
$(document).ready(function(){
$("#uploadform").hide();
});
</script>
如果用户未登录,这将隐藏表单。
<h2 id="needlogon"> You need to be logged in </h2>
<a id="needlogon" href="index.php"> Back to start </a>
这些仅在用户未登录时显示
<?php
if (isset($_SESSION['cid'])){
echo '<script>
$(document).ready(function(){
$("#uploadform").show();
$("needlogon").hide();
});
</script>';
}
?>
上传表单按预期 shown/hid,但在设置条件 ($_SESSION['cid']) 时不会隐藏需要登录的元素。唯一可行的方法是,如果我将元素的 ID 更改为 needlogon1 和 needlogon2,并将 JQuery 更改为:
<?php
if (isset($_SESSION['cid'])){
echo '<script>
$(document).ready(function(){
$("#uploadform").show();
$("#needlogon1").hide();
$("#needlogon2").hide();
});
</script>';
}
?>
我确定我只是遗漏了一些愚蠢的东西,有人知道它是什么吗?
首先,您的 jQuery 选择器已关闭:
// $("needlogon").hide();
$("#needlogon").hide(); // you forgot the #
话虽如此,您正在使用一个 ID -- 它应该是 唯一。您可能希望将 needlogin
的两种用法更改为 class
而不是 id
,然后您的选择器将是 .needlogon
,如下所示:
$(".needlogon").hide();
我一直在使用 JQuery 到 show/hide 基于登录状态的元素,但是我 运行 得到了一些意想不到的结果,代码如下:
<script>
$(document).ready(function(){
$("#uploadform").hide();
});
</script>
如果用户未登录,这将隐藏表单。
<h2 id="needlogon"> You need to be logged in </h2>
<a id="needlogon" href="index.php"> Back to start </a>
这些仅在用户未登录时显示
<?php
if (isset($_SESSION['cid'])){
echo '<script>
$(document).ready(function(){
$("#uploadform").show();
$("needlogon").hide();
});
</script>';
}
?>
上传表单按预期 shown/hid,但在设置条件 ($_SESSION['cid']) 时不会隐藏需要登录的元素。唯一可行的方法是,如果我将元素的 ID 更改为 needlogon1 和 needlogon2,并将 JQuery 更改为:
<?php
if (isset($_SESSION['cid'])){
echo '<script>
$(document).ready(function(){
$("#uploadform").show();
$("#needlogon1").hide();
$("#needlogon2").hide();
});
</script>';
}
?>
我确定我只是遗漏了一些愚蠢的东西,有人知道它是什么吗?
首先,您的 jQuery 选择器已关闭:
// $("needlogon").hide();
$("#needlogon").hide(); // you forgot the #
话虽如此,您正在使用一个 ID -- 它应该是 唯一。您可能希望将 needlogin
的两种用法更改为 class
而不是 id
,然后您的选择器将是 .needlogon
,如下所示:
$(".needlogon").hide();