Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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 Listview在添加列表项Jquery Mobile时重复ID_Javascript_Jquery_Listview_Jquery Mobile_Jquery Mobile Flipswitch - Fatal编程技术网

Javascript Listview在添加列表项Jquery Mobile时重复ID

Javascript Listview在添加列表项Jquery Mobile时重复ID,javascript,jquery,listview,jquery-mobile,jquery-mobile-flipswitch,Javascript,Jquery,Listview,Jquery Mobile,Jquery Mobile Flipswitch,我正在构建一个定制的Jquery移动列表,其中有一个域列表,它几乎没有翻转开关 我正在动态创建翻转开关。创建时,分配了唯一ID。我在创建时进行了检查,所有的ID都是唯一的。创建翻转开关后,我将附加到列表项 刷新列表后,我可以看到翻转框与其他翻转框具有相同的ID。我在创建时进行了验证,结果很好。创建后,它的格式不正确 < P> AM使用基础JS构建网格。 执行此操作的JavaScript代码是 for(var currentIndex = 0; currentIndex < myArray.

我正在构建一个定制的Jquery移动列表,其中有一个域列表,它几乎没有翻转开关

我正在动态创建翻转开关。创建时,分配了唯一ID。我在创建时进行了检查,所有的ID都是唯一的。创建翻转开关后,我将附加到列表项

刷新列表后,我可以看到翻转框与其他翻转框具有相同的ID。我在创建时进行了验证,结果很好。创建后,它的格式不正确

< P> AM使用基础JS构建网格。 执行此操作的JavaScript代码是

for(var currentIndex = 0; currentIndex < myArray.length ; currentIndex ++){

    var currentField =  myArray[currentIndex];

    $('#my-list').append('<li data-role="list-divider" class="my-list-by-domain">'+currentField.Name+'</li>');

    for(var domainCount = 0; domainCount < (currentField.UserGoals).length ; domainCount++) {

        var currentMyGoalField = (currentField.UserGoals)[domainCount];

        var myGoalsDataElement = $(".my-goals-content-template .my-goals-data-row").clone();

        var switchElement =  ('<fieldset><div data-role="fieldcontain">' +

            '<select class="my-goals-flip-switch" data-role="flipswitch" onchange="goalOnChange(' + currentMyGoalField.UserGoalId + ')" ' +

            'id="my-goals-toggle-' + currentMyGoalField.UserGoalId + '">' +

            '<option value="true">Yes</option>' +

            '<option value="false">No</option>' +

            '</select></div>' +

            '</fieldset>');

        $(".my-goals-label", myGoalsDataElement).text(currentMyGoalField.Name);

        $("#my-goals-complete-check").empty();

        $("#my-goals-complete-check").append(switchElement);

        $('#my-goal-list').append(myGoalsDataElement).enhanceWithin();

    }

}
相同的HTML容器是

<div class="my-goals-content-template" style="display: none">

    <div class="row my-goals-data-row">

        <div class="small-9 medium-10 large-10 columns my-goals-label"></div>

        <div class=" small-3 medium-2 large-2 columns">

            <div id="my-goals-complete-check">

            </div>

        </div>

    </div>

</div>
谁能帮我理解这个问题。

我发现了这个问题

实际上,我必须指定控件所在的容器

解决办法是

$("#my-goals-complete-check",myGoalsDataElement).empty();

$("#my-goals-complete-check",myGoalsDataElement).append(switchElement); 
myArray中包含什么?