基本上,我有一个调查问卷,这是非常动态的&数据驱动的性质......JQuery多维数组或其他方法?
对于每个问题,我可以有一个 题号, 0或多个选项的单选按钮, 0或复选框更多的选择, 然后每个选项的单选按钮,我将有一个 选项ID, 值 并为每个选项复选框,我将有一个 选项ID, 值 并且因为这是一个textarea每个选项我将有一个 选项ID, 值 如果我没有选择,我可以有一个是没有单选按钮组,这将有 问题ID, 值 如果我没有选择我也可以有一个文本,这将有
问题ID, 值
我所拥有的一切使我想要的方式和我的变化,并单击jQuery的事件被射击时我希望他们...
问题在我的JQuery此刻我想揪出一种方法来保存所有这些问题的答案,因为他们被回答,如果他们改变更新或取代我以前存储的...
一旦用户完成了答案和编辑(如适用),我将在我的基于mvc3的解决方案中将jquery/json发布到我的控制器中;如果我能得到我的什么样的Jquery的结构,我需要做到这一点想通了,我好去...
的方法来做到这一点的jQuery是让我头疼所需的结构...
在我想到的是沿着以下线的东西的那一刻...
var $ArrayToPost = [];
var $questionare =
{
Questions: {
QuestionNumber: null,
Options: [],
YesNo: [],
TextArea: []
}
};
$('input.Questionare, textarea.Questionare').live({
click: function (e) {
...rest omitted for brevity...
$questionare.Questions.QuestionNumber = $QuestionNbr;
$questionare.Questions.Options.push($CheckBox);
$ArrayToPost.push($questionare);
...rest omitted for brevity...
change : function (e) {
...rest omitted for brevity...
});
的问题,我有这种做法是只要单击一个复选框,单选按钮或值的文本改变我不得不弄清楚我已经在结构中添加了适用的问题编号,并更新任何适用的或者只是替换w帽子是适用...
我觉得我在这个复杂,并会把握像一个更优雅的方式......
在此先感谢。
UPDATE:仍然没有想出一个办法让这个打算,希望有人可以帮我在正确的方向前进......
我不是很追随你......我所有的问题都是动态的,我可以有没有单选按钮组,以及单选按钮列表和复选框列表和textareas每个问题我可以在任何给定的时间显示n个可分页的问题...我可以静态定义的数量很少... – user1011144 2012-01-13 16:14:03
我可以看到如何为一个适用的问题添加0个或多个项目的每个单独的数组.. 。但我不知道如何进行说,例如我有一个复选框和0或更多文本区域的列表,例如对于同一个问题;当点击和更改每个事件分别触发...所以说更改事件触发,并选中一个复选框并将其值和问题编号添加到我想发布的过程数组中...然后一些文本是键入一个文本框,是同一问题的一部分...如果我添加相同的问题编号和当前值,我将失去信息。 – user1011144 2012-01-13 16:41:53
我的方法仍然适用于您。当记录你的答案只需要像这样地址你的数组:答案[qNum] ['textarea'] =答案;因此,每个问题的数据结构如下所示:answer = {0:{textarea:“”,radio:“”}}等等。您可能需要在阅读问卷时设置结构,但这应该是微不足道的。 – 2012-01-18 22:17:28