Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.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 嵌套集合窗体,附加到最近的类_Javascript_Jquery_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

Javascript 嵌套集合窗体,附加到最近的类

Javascript 嵌套集合窗体,附加到最近的类,javascript,jquery,asp.net-mvc,asp.net-mvc-4,Javascript,Jquery,Asp.net Mvc,Asp.net Mvc 4,您好,我一直在尝试制作一个动态的集合,我可以发布到服务器上,经过一些努力,我找到了这个指南; 写得很好,但我还没有得到它来满足我的需要。 除了一件“小”烦人的事外,一切都很好 首先是关于我想要达到的目标的一些信息 我的课是这样的; Qpack有一个问题列表 问题有一个备选方案清单 我创建的界面如下所示 function addNestedForm(container, counter, ticks, content) { var nextIndex = $(container + " "

您好,我一直在尝试制作一个动态的集合,我可以发布到服务器上,经过一些努力,我找到了这个指南; 写得很好,但我还没有得到它来满足我的需要。 除了一件“小”烦人的事外,一切都很好

首先是关于我想要达到的目标的一些信息

我的课是这样的; Qpack有一个问题列表 问题有一个备选方案清单

我创建的界面如下所示

function addNestedForm(container, counter, ticks, content) {
    var nextIndex = $(container + " " + counter).length;
    //var nextIndex = $(counter).length; // Orginal
    var pattern = new RegExp(ticks, "gi");
    content = content.replace(pattern, nextIndex);
    $(container).append(content);
    resetValidation();
}

这是标记。

“添加问题”按钮效果很好,标记也很匹配,但我点击“添加备选方案”,它总是被添加到第一个问题中。但是,如第二幅图所示,标记很好

负责追加的函数如下所示

function addNestedForm(container, counter, ticks, content) {
    var nextIndex = $(container + " " + counter).length;
    //var nextIndex = $(counter).length; // Orginal
    var pattern = new RegExp(ticks, "gi");
    content = content.replace(pattern, nextIndex);
    $(container).append(content);
    resetValidation();
}


我想附加到最相关的“备选方案”中,但似乎总是第一个,如果jQuery选择器指定了一个ID(
#
),并且Html文档中有多个ID具有该ID,那么jQuery将始终返回第一个ID,那么如何让它理解“最近的”备选方案呢

您必须有一种方法在整个页面中唯一地指定“备选方案”

或者(双关语)您可以创建一个新的css类,替换

<div id="alternative" ...
var container = $(this).parents('div.alternative-container:first');