javascript - 根据文本框中输入的数字显示 div

标签 javascript jquery

我想根据输入字段中输入的数字显示 div。如果用户输入 1,则不会显示任何访客字段。如果用户输入 2 .guest-0 应显示。如果用户输入 3. guest-0guest-1 应显示,依此类推。如果用户更改他们的答案,它应该反射(reflect)他们的更改。

<p>Attendees</p>
<input type="text" class="attendees" max="4">

<div class="guest-0">
    <span>guest 1 name</span>
    <span>guest 1 more</span>
</div>
<div class="guest-1">
    <span>guest 2 name</span>
    <span>guest 2 more</span>
</div>
<div class="guest-2">
    <span>guest 3 name</span>
    <span>guest 3 more</span>
</div>
<div class="guest-3">
    <span>guest 4 name</span>
    <span>guest 4 more</span>
</div>

<script>
    $('div[class*="guest-"]').hide();
</script>

这可以用 jQuery 或纯 JS 来完成

最佳答案

$('.attendees').on('change', function(){
    $value = Math.max(0, Number(this.value) - 1);
    $('div[class*="guest-"]').hide().slice(0, $value).show();
});

jsFiddle

关于javascript - 根据文本框中输入的数字显示 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47871381/

相关文章:

javascript - JS : Default function parameter values and scope

javascript - 如何在悬停和单击时切换元素样式?

jquery - 如何选择包含类(jquery)的所有表行(tr)

javascript - 如果我从 Javascript 轮询切换到 websockets,会减少服务器负载吗?

javascript - 调用特定的导航选项卡

jQuery 无限循环遍历每个 div

javascript - rails : Javascript does not work on paginated objects

jQuery 数据和对象

javascript - mvc部分 View onsubmit表单从父 View 发送数据

javascript - 新消息背景突出显示