Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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
Javascript 如何使循环在两个div之间拆分4个输入?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何使循环在两个div之间拆分4个输入?

Javascript 如何使循环在两个div之间拆分4个输入?,javascript,jquery,html,Javascript,Jquery,Html,我需要对我继承的代码块进行一个小的行为更改,不幸的是,设置是一个非常大的函数,它正在构建一个html模板,其中包含大量for循环 目前,模板函数中有一个部分,其中循环生成4个文本输入,其中包含以及提交按钮。我想做的是,如果这个特定区域有两个以上的输入,那么在一个中放入两个带有subit的,然后在另一个div中放入另外两个带有subit的,因此本质上将它们分开。下面是一个快速(非常)肮脏的视觉例子,说明了我试图实现的目标 下面是将4个输入生成到单个的电流回路。我的想法是,我需要设置一个计数器,当

我需要对我继承的代码块进行一个小的行为更改,不幸的是,设置是一个非常大的函数,它正在构建一个html模板,其中包含大量for循环

目前,模板函数中有一个部分,其中循环生成4个文本输入,其中包含
以及提交按钮。我想做的是,如果这个特定区域有两个以上的输入,那么在一个
中放入两个带有subit的,然后在另一个div中放入另外两个带有subit的,因此本质上将它们分开。下面是一个快速(非常)肮脏的视觉例子,说明了我试图实现的目标

下面是将4个输入生成到单个
的电流回路。我的想法是,我需要设置一个计数器,当计数器为===2时,它将使用新的类创建新的html元素,这些类将根据需要对它们进行样式设置。但我不确定如何在保持循环的同时实现这一点

if (measurementTypeGroup.MeasurementTypes.length > 1) {

    newNodeHtml += "<div id='" + measurementClass + "-3-" + measurementTypeGroup.MeasurementTypes[0].TargetConfigure[0].TargetType + "' class='target-metric input " + measurementClass + "-input'>";

    for (var k = 0; k < measurementTypeGroup.MeasurementTypes.length; k++) {
        var mType = measurementTypeGroup.MeasurementTypes[k];
        var userTarget = mType.UserTarget;
        var targetConfigure = mType.TargetConfigure[0]; 

        newNodeHtml += "<div><span>" + mType.MeasurementTypeName + " TARGET</span>" +
                    "<input type='text' id='txt-" + measurementClass + "-3-" + mType.MeasurementTypeID + "' placeholder='" + mType.UnitName + "' value='" + targetHighValue + "' " + disableAttribute + "></div>";
    }

    newNodeHtml += "<a onclick='CellClicked(" + mTypeGroupID + ", 3, 3)'><span class='check-range'></span></a>" +
            "</div>";
}
if(measurementTypeGroup.MeasurementTypes.length>1){
newNodeHtml+=“”;
对于(var k=0;k

谢谢你的帮助

这应该满足您的需要,它是一个嵌套的
循环
,具有
个循环
索引

if (measurementTypeGroup.MeasurementTypes.length > 1) {
    var index = 0;
    var numberOfLoops = Math.ceil(measurementTypeGroup.MeasurementTypes.length / 2);
    for (var i = 0; i < numberOfLoops; i++) {
        var newNodeHtml = '';
        newNodeHtml += "<div id='" + measurementClass + "-3-" + measurementTypeGroup.MeasurementTypes[0].TargetConfigure[0].TargetType + "' class='target-metric input " + measurementClass + "-input'>";

        for (index; index < index + 2; index++) {
            if(measurementTypeGroup.MeasurementTypes[index] === undefined)
                break;

            var mType = measurementTypeGroup.MeasurementTypes[index];
            var userTarget = mType.UserTarget;
            var targetConfigure = mType.TargetConfigure[0];

            newNodeHtml += "<div><span>" + mType.MeasurementTypeName + " TARGET</span>" +
                "<input type='text' id='txt-" + measurementClass + "-3-" + mType.MeasurementTypeID + "' placeholder='" + mType.UnitName + "' value='" + targetHighValue + "' " + disableAttribute + "></div>";
        }

        newNodeHtml += "<a onclick='CellClicked(" + mTypeGroupID + ", 3, 3)'><span class='check-range'></span></a>" +
            "</div>";
    }
}
if(measurementTypeGroup.MeasurementTypes.length>1){
var指数=0;
var numberOfLoops=Math.ceil(measurementTypeGroup.MeasurementTypes.length/2);
对于(var i=0;i
除非它们位于单独的标签中,否则两个提交都将执行相同的操作。我不介意将其保留在一个只出现在第二个分区中的提交按钮上。第一个分区可能包含一个“下一步”按钮。快?设置第二个计数器,并在每次达到值2时重新启动它。这与右下方的abc123方法基本相同?嗯,使用此方法,只显示一个输入,而不会创建下一阶段的输入。啊哈!这就是容器的循环,谢谢。我可以给第二个div一个不同的类来处理样式(很可能使用索引),只需连接一个next按钮。但所有四个输入仍然在第一个div上,而不是一个为2,另一个为2。这似乎现在不应该发生。@Stavros_是的,根据上面的代码,它不应该做你说的事情,但很有趣。我将for循环中的第一个“newNodeHtml”设置为使用MeasuremnetTypes[k],而不是零。所以这给了我一个适当的递增类名(class=“3-3”和class=“3-4”)。但它仍然像现在div的循环一样中断,而不是实际的输入。我有一个输入错误(var i=0;i