尝试创建 20 行 select 类型,并附加到它们。 (jQuery、车把和 HTML)
Attempting to create 20 rows with select type, and append to them. (jQuery, Handlebars & HTML)
感谢其他堆栈用户,我弄清楚了如何使用 jQuery 让 20 个 DIV 出现,现在我想将创建的第二个 div 修改为 "select" 样式,使用另一位 jQuery 代码将 "option" 标志附加到它们。他们都共享相同的 class,但我无法通过第一个。
HTML(车把)
<script>
$(document).ready(function(){
$(".jerseyNumber").each(function(){
for (n=1;n<=99;n++){
var $select = $(this);
$select.append($('<option></option>').val(n).html(n))
}
});
});
</script>
<script>
$(document).ready(function() {
for (i = 1; i < 20; i++) {
text = "<div class='form-group row'><div class='col-md-6'><input id='player" + i + "Name' name='player" + i + "Name' placeholder='Firstname Lastname' type='text' class='form-control here'></div><div class='col-md-6'><select id='player" + i + "Number' name='player" + i + "Number' class='form-control here jerseyNumber'></select></div></div>";
var playerSpan = $('.player');
playerSpan.append($(text));
}
});
</script>
<div class="container-fluid" id="body">
<div class="container" id="page-header">
<h1><span id="headline">Add a team</span></h1>
<hr>
<h3><span id="subheadline">Please enter the information below to add to the database</span></h3>
<form method="post" action="/create">
<div class="form-group row">
<div class="col-md-6">
<label for="teamName" class="col-form-label">Team Name</label>
<input id="teamName" name="teamName" placeholder="London Lemmings" type="text" required="required" class="form-control here">
</div>
<div class="col-md-6">
<label for="teamShortName" class="col-form-label">Team Short Name</label>
<input id="teamShortName" name="teamShortName" placeholder="LLM" type="text" aria-describedby="teamShortNameHelpBlock" required="required" maxlength="3" class="form-control here">
<span id="teamShortNameHelpBlock" class="form-text text-muted">Three Characters Only</span>
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<label for="coachName" class="col-form-label">Coach Name</label>
<input id="coachName" name="coachName" type="text" class="form-control here">
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<label for="goalieName" class="col-form-label">Goalie Name</label>
<input id="goalieName" name="goalieName" type="text" class="form-control here">
</div>
<div class="col-md-6">
<label for="goalieNumber" class="col-form-label">Goalie Number</label>
<select id="goalieNumber" name="goalieNumber" class="form-control here jerseyNumber">
</select>
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<strong>Player Names</strong>
</div>
<div class="col-md-6">
<strong>Player Numbers</strong>
</div>
</div>
<span class="player">
</span>
<div class="form-group row">
<div class="col-md-6">
<button name="submit" type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
<hr>
</div>
</div>
感谢任何帮助。
您的代码 player" + i + "jerseyNumber
将输出,例如 player1jerseyNumber
但您想要 player1 jerseyNumber
... 所以这是一个简单的间距问题。
class='form-control here player" + i + " jerseyNumber'
您还需要将 select
循环放在 div
循环之后,甚至将您的代码合并到一个 .ready()
函数中。
$(document).ready(function() {
for (i = 1; i < 20; i++) {
text = "<div class='form-group row'><div class='col-md-6'><input id='player" + i + "Name' name='player" + i + "Name' placeholder='Firstname Lastname' type='text' class='form-control here'></div><div class='col-md-6'><select id='player" + i + "Number' name='player" + i + "Number' class='form-control here player" + i + "jerseyNumber'></select></div></div>";
var playerSpan = $('.player');
playerSpan.append($(text));
}
$(".jerseyNumber").each(function(){
var $select = $(this);
for (n=1;n<=99;n++){
$select.append($('<option></option>').val(n).text(n))
}
});
});
感谢其他堆栈用户,我弄清楚了如何使用 jQuery 让 20 个 DIV 出现,现在我想将创建的第二个 div 修改为 "select" 样式,使用另一位 jQuery 代码将 "option" 标志附加到它们。他们都共享相同的 class,但我无法通过第一个。
HTML(车把)
<script>
$(document).ready(function(){
$(".jerseyNumber").each(function(){
for (n=1;n<=99;n++){
var $select = $(this);
$select.append($('<option></option>').val(n).html(n))
}
});
});
</script>
<script>
$(document).ready(function() {
for (i = 1; i < 20; i++) {
text = "<div class='form-group row'><div class='col-md-6'><input id='player" + i + "Name' name='player" + i + "Name' placeholder='Firstname Lastname' type='text' class='form-control here'></div><div class='col-md-6'><select id='player" + i + "Number' name='player" + i + "Number' class='form-control here jerseyNumber'></select></div></div>";
var playerSpan = $('.player');
playerSpan.append($(text));
}
});
</script>
<div class="container-fluid" id="body">
<div class="container" id="page-header">
<h1><span id="headline">Add a team</span></h1>
<hr>
<h3><span id="subheadline">Please enter the information below to add to the database</span></h3>
<form method="post" action="/create">
<div class="form-group row">
<div class="col-md-6">
<label for="teamName" class="col-form-label">Team Name</label>
<input id="teamName" name="teamName" placeholder="London Lemmings" type="text" required="required" class="form-control here">
</div>
<div class="col-md-6">
<label for="teamShortName" class="col-form-label">Team Short Name</label>
<input id="teamShortName" name="teamShortName" placeholder="LLM" type="text" aria-describedby="teamShortNameHelpBlock" required="required" maxlength="3" class="form-control here">
<span id="teamShortNameHelpBlock" class="form-text text-muted">Three Characters Only</span>
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<label for="coachName" class="col-form-label">Coach Name</label>
<input id="coachName" name="coachName" type="text" class="form-control here">
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<label for="goalieName" class="col-form-label">Goalie Name</label>
<input id="goalieName" name="goalieName" type="text" class="form-control here">
</div>
<div class="col-md-6">
<label for="goalieNumber" class="col-form-label">Goalie Number</label>
<select id="goalieNumber" name="goalieNumber" class="form-control here jerseyNumber">
</select>
</div>
</div>
<div class="form-group row">
<div class="col-md-6">
<strong>Player Names</strong>
</div>
<div class="col-md-6">
<strong>Player Numbers</strong>
</div>
</div>
<span class="player">
</span>
<div class="form-group row">
<div class="col-md-6">
<button name="submit" type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
<hr>
</div>
</div>
感谢任何帮助。
您的代码 player" + i + "jerseyNumber
将输出,例如 player1jerseyNumber
但您想要 player1 jerseyNumber
... 所以这是一个简单的间距问题。
class='form-control here player" + i + " jerseyNumber'
您还需要将 select
循环放在 div
循环之后,甚至将您的代码合并到一个 .ready()
函数中。
$(document).ready(function() {
for (i = 1; i < 20; i++) {
text = "<div class='form-group row'><div class='col-md-6'><input id='player" + i + "Name' name='player" + i + "Name' placeholder='Firstname Lastname' type='text' class='form-control here'></div><div class='col-md-6'><select id='player" + i + "Number' name='player" + i + "Number' class='form-control here player" + i + "jerseyNumber'></select></div></div>";
var playerSpan = $('.player');
playerSpan.append($(text));
}
$(".jerseyNumber").each(function(){
var $select = $(this);
for (n=1;n<=99;n++){
$select.append($('<option></option>').val(n).text(n))
}
});
});