Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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附加forloop_Jquery_Html - Fatal编程技术网

JQuery附加forloop

JQuery附加forloop,jquery,html,Jquery,Html,我有一个功能,可以附加一个选择框,可以选择生日。实现这一目标的最佳方式是什么 当我运行该脚本时,for循环中的append将添加到关闭选择之后。追加是否有逻辑,或者是否不严格?我认为forloop必须在继续之前完成 function addChildOption(){ if (counterOption < 3) { $("#add-child").append("<select name=\"child" + counterOption + "\" form=\"reg

我有一个功能,可以附加一个选择框,可以选择生日。实现这一目标的最佳方式是什么

当我运行该脚本时,for循环中的append将添加到关闭选择之后。追加是否有逻辑,或者是否不严格?我认为forloop必须在继续之前完成

function addChildOption(){
  if (counterOption < 3) {
    $("#add-child").append("<select name=\"child" + counterOption + "\" form=\"register\">");
    for(var i = year-15; i > 1900  ; i--){
          $("#add-child").append("<option class=\"choose-year\" value=" + i + ">" + i + "</option>");
    }
    $("#add-child").append("</select>");     
  }
}
函数addChildOption(){
如果(反选项<3){
$(“#添加子项”)。追加(“”);
对于(变量i=第15年;i>1900;i--){
$(“#添加子项”).append(“+i+”);
}
$(“#添加子项”)。追加(“”);
}
}
结果:


1999
1998
1997
等

您可以构造
选择
,将选项添加到该变量,然后将其附加到实际表单中:

var sel = $('<select name="child' + counterOption + '" form="register" />');

for(var i = year-15; i > 1900; i--) {
    sel.append($('<option value="' + i + '" class="choose-year">' + i+ '</option>'));
}

$('#add-child').append(sel);
var sel=$('');
对于(变量i=第15年;i>1900;i--){
选择附加($(''+i+'');
}
$(“#添加子项”).append(sel);

您可以构造
选择
,将选项添加到该变量,然后将其附加到实际表单中:

var sel = $('<select name="child' + counterOption + '" form="register" />');

for(var i = year-15; i > 1900; i--) {
    sel.append($('<option value="' + i + '" class="choose-year">' + i+ '</option>'));
}

$('#add-child').append(sel);
var sel=$('');
对于(变量i=第15年;i>1900;i--){
选择附加($(''+i+'');
}
$(“#添加子项”).append(sel);
函数addChildOption(){
如果(反选项<3){
var html=“”);
对于(变量i=第15年;i>1900;i--){
html+=“”+i+“”);
}
html+=“”
$(“#添加子项”).append(html);
}
}
函数addChildOption(){
如果(反选项<3){
var html=“”);
对于(变量i=第15年;i>1900;i--){
html+=“”+i+“”);
}
html+=“”
$(“#添加子项”).append(html);
}
}

就我而言,我更喜欢这样做:

function addChildOption() {
    if (counterOption < 3) {
        var addChild = $("#add-child");
        var mySelect = $("<select />").prop("name", "child" + counterOption).prop("form", "register").appendTo(addChild);
        for (var i = year - 15; i > 1900; i--) {
            $("<option />").addClass("choose-year").prop("value", i).text(i).appendTo(mySelect);
        }
    }
}
函数addChildOption(){
如果(反选项<3){
var addChild=$(“#添加子项”);
var mySelect=$(“”).prop(“名称”、“子项”+反选项).prop(“格式”、“寄存器”).appendTo(addChild);
对于(变量i=年份-15;i>1900;i--){
$(“”).addClass(“选择年份”).prop(“值”,i).text(i).appendTo(mySelect);
}
}
}

这样,我直接将select添加到容器中,然后将选项添加到select中。

就我而言,我更喜欢这样做:

function addChildOption() {
    if (counterOption < 3) {
        var addChild = $("#add-child");
        var mySelect = $("<select />").prop("name", "child" + counterOption).prop("form", "register").appendTo(addChild);
        for (var i = year - 15; i > 1900; i--) {
            $("<option />").addClass("choose-year").prop("value", i).text(i).appendTo(mySelect);
        }
    }
}
函数addChildOption(){
如果(反选项<3){
var addChild=$(“#添加子项”);
var mySelect=$(“”).prop(“名称”、“子项”+反选项).prop(“格式”、“寄存器”).appendTo(addChild);
对于(变量i=年份-15;i>1900;i--){
$(“”).addClass(“选择年份”).prop(“值”,i).text(i).appendTo(mySelect);
}
}
}
这样,我直接将select添加到容器中,然后将选项添加到select中。

使用

函数addChildOption(){
如果(反选项<3)
{
$(“#添加子项”).append(“”).queue(函数(下一步){
对于(变量i=第15年;i>1900;i--){
$(this.children().append(“+i+”);
}
next();
});
}
}
使用

函数addChildOption(){
如果(反选项<3)
{
$(“#添加子项”).append(“”).queue(函数(下一步){
对于(变量i=第15年;i>1900;i--){
$(this.children().append(“+i+”);
}
next();
});
}
}

Mybe您应该执行
$(“#添加子项选择”)。追加(…
您只能附加元素,不能附加标记。当您附加
选择
元素时,它必须是完整的,您不能先添加开始标记,然后再添加结束标记。当您尝试添加开始标记时,浏览器将从中生成一个完整的元素,因此当您添加选项时,它们将在选择.Mybe之后结束。您应该执行
$(“#添加子选择”)。追加(…
您只能追加元素,而不能追加标记。追加
select
元素时,它必须是完整的,您不能先添加开始标记,然后再添加结束标记。当您尝试添加开始标记时,浏览器将从中生成一个完整的元素,因此当您添加选项时,它们将在选择之后结束。
function addChildOption(){
   if (counterOption < 3)
   {
      $("#add-child").append("<select name=\"child" + counterOption + "\" form=\"register\"></select>").queue(function(next){
         for(var i = year-15; i > 1900  ; i--) {
           $(this).children().append("<option class=\"choose-year\" value=" + i + ">" + i + " </option>");
         }
      next();
     });
   }
}