javascript - Jquery 根据选择值创建输入元素数量

标签 javascript jquery html

首先我想说我对 jquery 和 javascript 很陌生,我很少使用它,但是我现在发现自己处于需要使用它的位置。

我正在尝试做什么

我正在尝试让管理员用户将比赛中的一轮比赛上传到数据库,从而构建 X 轮的时间表......希望这是有意义的

应该发生什么

例如,如果用户从下拉框中选择 4,则应创建 8 个输入字段,从而允许用户输入每场比赛每轮比赛的 2 支球队。

我尝试过编写这个代码,(请不要笑)但是逻辑和代码完全错误,如果有人能好心地帮助我解决这个问题,我将不胜感激,可能让我将来可以以此为基础进行构建。

JFiddle

https://jsfiddle.net/leela89/zvss0f8L/#&togetherjs=RApSQ2E6Sr

代码

 <select id="nrGames" name="nrGame">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
    </select>    

<script type="text/javascript">
    //create input element for nr games
    $("#nrGames").change(function(){
     var value = $(this).val;
     var nr = 0;
     while(nr < value){
         $('#games').add('input');
         nr++;
     }
        })

    </script>
<!--APPEND INOUT TEXT -->
    <div id="games">

    </div>

最佳答案

尝试.append()将新元素添加到目标元素中,

$("#nrGames").change(function() {
  var value = +$(this).val();
  value *= 2;
  var nr = 0;
  var elem = $('#games').empty();
  while (nr < value) {
    elem.append($('<input>',{name : "whateverNameYouWant"}));
    nr++;
  }
});

此外,.val() 是一个函数,而不是属性

DEMO

关于javascript - Jquery 根据选择值创建输入元素数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35824127/

相关文章:

javascript - AppleScript 变量传递给 JavaScript

javascript - 如何从字符串中删除不需要的字符

javascript - 如何从另一个 php 页面调用 div 链接?

javascript - 如何使用 JQuery 根据文本值将不同的属性分配给同一类的多个元素

jquery - 使 bootstrap popover 重叠

html - css 显示表格单元格使右侧单元格向下移动

javascript - 通过 PHP 中的类字段填充 HTML 输入类型

javascript - JQuery - HTTP 404 NOT FOUND - 服务器未找到与请求的 URI 匹配的任何内容

javascript - 在 JavaScript 中,如何让代码在执行 for 循环时将随机生成的数字一一相加?

javascript - 从不同的文件渲染 react 组件