Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery切换“变量”div_Jquery_Variables_Toggle - Fatal编程技术网

jquery切换“变量”div

jquery切换“变量”div,jquery,variables,toggle,Jquery,Variables,Toggle,我有来自DB的结果页面,在每一行我都有显示/隐藏按钮,该按钮应该显示/隐藏带有$title的容器 我尝试使用jquery,但它不起作用: <div class="container"> <div class="show_hide_button_<? echo $article_id_tmp; ?>"><a href="#">show/hide</a></div> <div class="show_hide_c

我有来自DB的结果页面,在每一行我都有显示/隐藏按钮,该按钮应该显示/隐藏带有$title的容器

我尝试使用jquery,但它不起作用:

<div class="container">
 <div class="show_hide_button_<? echo $article_id_tmp; ?>"><a href="#">show/hide</a></div>
    <div class="show_hide_container_<? echo $article_id_tmp; ?>">
</div>
</div>



<script type="text/javascript">
var div_id = '$article_id_tmp';

div_id_b+='.show_hide_button_'+ 'div_id';
div_id_c+='.show_hide_container_'+ 'div_id';

$(function(){
  $('div_id_b').click(function(){
     $('div_id_c').toggle();     
  });
});

谢谢

JavaScript代码需要正确输出PHP变量,正如您在HTML中所做的那样。所以你需要改变:

var div_id = '$article_id_tmp';

最后,jQuery选择器不需要引号,因为它们已经是变量了。现有代码将查找一个名为div_id_b的元素,该元素不存在


正确的选择器应为$div\u id\b。单击。。。和$div_id_c.toggle

JavaScript代码需要正确输出PHP变量,正如您在HTML中所做的那样。所以你需要改变:

var div_id = '$article_id_tmp';

最后,jQuery选择器不需要引号,因为它们已经是变量了。现有代码将查找一个名为div_id_b的元素,该元素不存在


正确的选择器应为$div\u id\b。单击。。。和$div_id_c.toggle

您的变量是变量,而不是字符串,因此您不应该将它们包含在空格中:

var div_id = '$article_id_tmp';

div_id_b+='.show_hide_button_'+ 'div_id';
div_id_c+='.show_hide_container_'+ 'div_id';

$(function(){
  $(div_id_b).click(function(){
     $(div_id_c).toggle();     
  });
});
此外,您需要在JS中回显$article_id_tmp:

var div_id = '<?php echo $article_id_tmp ?>';

div_id_b+='.show_hide_button_'+ 'div_id';
div_id_c+='.show_hide_container_'+ 'div_id';

$(function(){
  $(div_id_b).click(function(){
     $(div_id_c).toggle();     
  });
});

当然,您可以删除容器类,只需使用$this.next.toggle即可

您的变量是变量,而不是字符串,因此不应将它们括在空格中:

var div_id = '$article_id_tmp';

div_id_b+='.show_hide_button_'+ 'div_id';
div_id_c+='.show_hide_container_'+ 'div_id';

$(function(){
  $(div_id_b).click(function(){
     $(div_id_c).toggle();     
  });
});
此外,您需要在JS中回显$article_id_tmp:

var div_id = '<?php echo $article_id_tmp ?>';

div_id_b+='.show_hide_button_'+ 'div_id';
div_id_c+='.show_hide_container_'+ 'div_id';

$(function(){
  $(div_id_b).click(function(){
     $(div_id_c).toggle();     
  });
});

当然,您可以删除容器类,只需使用$this.next.toggle,对我来说,似乎您需要编写

var div_id = '<?php echo $article_id_tmp; ?>';

所以你实际上是在用正确的线喂食。否则,div\u id将始终是字符串“$article\u id\u tmp”

对我来说,看起来您必须编写

var div_id = '<?php echo $article_id_tmp; ?>';

所以你实际上是在用正确的线喂食。否则div\u id将始终是字符串“$article\u id\u tmp”

也许您需要简化标记。使用一些类来标记“显示/隐藏”按钮,使用一些类来标记内容容器。脚本将非常小且易于理解:

$('.container .show_hide_button a').click(function() {
    $(this).parent().siblings('.show_hide_container').toggle();
});

现场演示:

也许您需要简化标记。使用一些类来标记“显示/隐藏”按钮,使用一些类来标记内容容器。脚本将非常小且易于理解:

$('.container .show_hide_button a').click(function() {
    $(this).parent().siblings('.show_hide_container').toggle();
});
现场演示: