MVC,AngularJS,生成添加注释的随机设置
MVC, AngularJS, Generate a random setup of added notes
我正在尝试创建一个解决方案,我可以在其中将名称输入文本区域,然后以随机顺序生成注释设置(其中每个注释都有两个输入字段),但在最新添加的注释中。
我现在尝试了很多东西都没有成功。我真的希望你们中的一些人能帮助我,或者给我指出一个类似的例子。
例如,如果我在 textarea 中输入四个名字然后按 "Generate Notes",它应该生成三个注释,其中第一个注释在两个字段中都应该显示为空,名字将被放入最后两个音符随机排列。像这样:
文本区域;
name1
name2
name3
name4
输出将是这样的:
- [empty,empty]
- [name2,name3] [name1,name4]
如果我输入六个名字:
name1
name2
name3
name4
name5
name6
输出将是这样的:
- [empty,empty]
- [empty,empty] [empty,empty]
- [name2,name5] [name3,name1] [name4,name6] [empty,empty]
以下 fiddle 添加了一个 none 功能文本区域。它确实有一个 "Generate Notes" 按钮,现在可以手动添加注释。每次点击一个会话。它不会生成任何东西。
请看这个fiddle:
jsfiddle.net/VJ94U/1140/
非常感谢您能给我的任何帮助或指示!
提前谢谢你。
好的,您正在寻找解决这种情况的算法。这是一个工作示例,现在您需要对其进行调整以适应 Angular 事情,如果您对此有任何疑问,请告诉我们。
function graph(nbNames) {
var nbLines = 0;
while (Math.pow(2, nbLines) < nbNames) { nbLines ++; }
for (var i=0; i<nbLines; i++) {
var t = '';
for (var j=0; j<Math.pow(2, i); j++) {
t += '[ ';
for (var k=0; k<2; k++) {
if (i === nbLines-1 && (j*2+k) < nbNames) { t += ' x '; }
else { t += ' - '; }
}
t += " ]";
}
console.log(t);
}
}
并且输出:
graph(4) >>
[ - - ]
[ x x ][ x x ]
graph(6) >>
[ - - ]
[ - - ][ - - ]
[ x x ][ x x ][ x x ][ - - ]
编辑:您可以通过这种方式从文本区域获取您的姓名数组:
var names = $(yourTextArea).val().split('\n');
var numberNames = names.length;
我正在尝试创建一个解决方案,我可以在其中将名称输入文本区域,然后以随机顺序生成注释设置(其中每个注释都有两个输入字段),但在最新添加的注释中。 我现在尝试了很多东西都没有成功。我真的希望你们中的一些人能帮助我,或者给我指出一个类似的例子。
例如,如果我在 textarea 中输入四个名字然后按 "Generate Notes",它应该生成三个注释,其中第一个注释在两个字段中都应该显示为空,名字将被放入最后两个音符随机排列。像这样:
文本区域;
name1
name2
name3
name4
输出将是这样的:
- [empty,empty]
- [name2,name3] [name1,name4]
如果我输入六个名字:
name1
name2
name3
name4
name5
name6
输出将是这样的:
- [empty,empty]
- [empty,empty] [empty,empty]
- [name2,name5] [name3,name1] [name4,name6] [empty,empty]
以下 fiddle 添加了一个 none 功能文本区域。它确实有一个 "Generate Notes" 按钮,现在可以手动添加注释。每次点击一个会话。它不会生成任何东西。
请看这个fiddle:
jsfiddle.net/VJ94U/1140/
非常感谢您能给我的任何帮助或指示! 提前谢谢你。
好的,您正在寻找解决这种情况的算法。这是一个工作示例,现在您需要对其进行调整以适应 Angular 事情,如果您对此有任何疑问,请告诉我们。
function graph(nbNames) {
var nbLines = 0;
while (Math.pow(2, nbLines) < nbNames) { nbLines ++; }
for (var i=0; i<nbLines; i++) {
var t = '';
for (var j=0; j<Math.pow(2, i); j++) {
t += '[ ';
for (var k=0; k<2; k++) {
if (i === nbLines-1 && (j*2+k) < nbNames) { t += ' x '; }
else { t += ' - '; }
}
t += " ]";
}
console.log(t);
}
}
并且输出:
graph(4) >>
[ - - ]
[ x x ][ x x ]
graph(6) >>
[ - - ]
[ - - ][ - - ]
[ x x ][ x x ][ x x ][ - - ]
编辑:您可以通过这种方式从文本区域获取您的姓名数组:
var names = $(yourTextArea).val().split('\n');
var numberNames = names.length;