Show/Hide 使用 jQuery 和 ACF 的 Div
Show/Hide Divs using jQuery and ACF
我有一个下拉列表,其中包含默认选项和其他 3 个选项。我想根据选择隐藏和显示 div。
如果选择是默认的,所有的 div 都应该是可见的。否则根据选择,div 应该显示或隐藏。
但是我的 jQuery 代码似乎不起作用。我不知道为什么。这是代码。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">. </script>
<script>
$(document).ready(function(){
$('#purpose').on('change', function() {
if ( this.value == '1')
{
$(".partition").show();
}
else
{
$(".partition").hide();
}
});
});
</script>
而 html 代码是
<select id="purpose" style="width:33%;height:50px;border:0px;background: #dadada; font-size:x-large;">
<option selected><b>Type de matériel</b></option>
<option value="1">Poster</option>
<option value="2">Books</option>
<option value="3">Audio</option>
</select>
<div class="partition">
<?php the_field('poster_heading_1'); ?>
<?php
$image = get_sub_field('partition_image');
if( !empty($image) ):
?>
<a href="<?php the_sub_field('partition_pdf'); ?>" target="_blank">
<img src="<?php echo $image['url']; ?>">
</a>
<?php the_sub_field('partition_text'); ?>
<?php endif; ?>
</div>
这应该可以,只是更正了一点 jquery
<script>
$(document).ready(function(){
$('#purpose').change(function() {
if ( $(this).val() == '1')
{
$(".partition").show();
}
else
{
$(".partition").hide();
}
});
});
</script>
如果我理解正确,你应该有 3 个分区 div 像你说的那样工作,每个 div 的 ID 号应该等于你想要显示的 select 选项值.检查此代码,让我告诉您这是否是您需要的。
jQuery:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">. </script>
<script>
$(document).ready(function(){
$('#purpose').on('change', function() {
var val = $(this).val();
console.log(val);
if ( val == '0' ) {
$(".partition").show();
} else {
$(".partition").hide();
$("#partition-" + val).show();
}
});
});
</script>
HTML:
<select id="purpose" style="width:33%;height:50px;border:0px;background: #dadada; font-size:x-large;">
<option selected value="0"><b>Type de matériel</b></option>
<option value="1">Poster</option>
<option value="2">Books</option>
<option value="3">Audio</option>
</select>
<div class="partition" id="partition-1">
<?php the_field('poster_heading_1'); ?>
<?php
$image = get_sub_field('partition_image');
if( !empty($image) ):
?>
<a href="<?php the_sub_field('partition_pdf'); ?>" target="_blank"> <img src="<?php echo $image['url']; ?>"> </a>
<?php the_sub_field('partition_text'); ?>
<?php endif; ?>
</div>
我有一个下拉列表,其中包含默认选项和其他 3 个选项。我想根据选择隐藏和显示 div。 如果选择是默认的,所有的 div 都应该是可见的。否则根据选择,div 应该显示或隐藏。 但是我的 jQuery 代码似乎不起作用。我不知道为什么。这是代码。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">. </script>
<script>
$(document).ready(function(){
$('#purpose').on('change', function() {
if ( this.value == '1')
{
$(".partition").show();
}
else
{
$(".partition").hide();
}
});
});
</script>
而 html 代码是
<select id="purpose" style="width:33%;height:50px;border:0px;background: #dadada; font-size:x-large;">
<option selected><b>Type de matériel</b></option>
<option value="1">Poster</option>
<option value="2">Books</option>
<option value="3">Audio</option>
</select>
<div class="partition">
<?php the_field('poster_heading_1'); ?>
<?php
$image = get_sub_field('partition_image');
if( !empty($image) ):
?>
<a href="<?php the_sub_field('partition_pdf'); ?>" target="_blank">
<img src="<?php echo $image['url']; ?>">
</a>
<?php the_sub_field('partition_text'); ?>
<?php endif; ?>
</div>
这应该可以,只是更正了一点 jquery
<script>
$(document).ready(function(){
$('#purpose').change(function() {
if ( $(this).val() == '1')
{
$(".partition").show();
}
else
{
$(".partition").hide();
}
});
});
</script>
如果我理解正确,你应该有 3 个分区 div 像你说的那样工作,每个 div 的 ID 号应该等于你想要显示的 select 选项值.检查此代码,让我告诉您这是否是您需要的。
jQuery:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">. </script>
<script>
$(document).ready(function(){
$('#purpose').on('change', function() {
var val = $(this).val();
console.log(val);
if ( val == '0' ) {
$(".partition").show();
} else {
$(".partition").hide();
$("#partition-" + val).show();
}
});
});
</script>
HTML:
<select id="purpose" style="width:33%;height:50px;border:0px;background: #dadada; font-size:x-large;">
<option selected value="0"><b>Type de matériel</b></option>
<option value="1">Poster</option>
<option value="2">Books</option>
<option value="3">Audio</option>
</select>
<div class="partition" id="partition-1">
<?php the_field('poster_heading_1'); ?>
<?php
$image = get_sub_field('partition_image');
if( !empty($image) ):
?>
<a href="<?php the_sub_field('partition_pdf'); ?>" target="_blank"> <img src="<?php echo $image['url']; ?>"> </a>
<?php the_sub_field('partition_text'); ?>
<?php endif; ?>
</div>