我正在尝试创建一个幻灯片面板,它对于包含大量字段的表单来说就像一个目录。我有一个循环似乎随机拉除了文本字段两次:
var ToC =
"<div id='sticky-anchor'></div><div id='sticky'><a href='#toc'>☰ Table of Contents</a></div><nav role='navigation' id='toc' class='table-of-contents'><a href='#'>X Close</a>" +
"<ul>";
var newLine, el, title, link;
jQuery(".form-wrapper").each(function() {
el = jQuery(this).find('input');
elLabel = jQuery(this).find('label:first');
title = elLabel.text();
link = "#" + el.attr("id");
newLine =
"<li>" +
"<a href='" + link + "'>" +
title +
"</a>" +
"</li>";
ToC += newLine;
});
ToC +=
"</ul>" +
"</nav>";
jQuery(".page-node-add-application #page").prepend(ToC);
});
编辑:看起来重复是由jQuery select2插件引起的。
答案 0 :(得分:0)
我认为单引号或双引号错误,我不知道是什么原因你可以在追加后创建jquery对象,希望这会对你有所帮助
var $nav=$("<nav>").attr({
"role":"navigation",
"id":"toc",
"class","table-of-contents"
});
var $a=$("<a href='#'>").text("X Close");
var $ul=$("<ul>");
$nav.append($a);
$nav.append($ul);
//var ToC = "<div id='sticky-anchor'></div><div id='sticky'><a href='#toc'>☰ Table of Contents</a></div><nav role='navigation' id='toc' class='table-of-contents'><a href='#'>X Close</a>" + "<ul>";
var newLine, el, title, link;
jQuery(".form-wrapper").each(function() {
el = jQuery(this).find('input');
elLabel = jQuery(this).find('label:first');
title = elLabel.text();
link = "#" + el.attr("id");
var $li= $("<li>");
var $aa=$("<a>").attr("href",link);
$li.append($aa);
$ul.append($li);
/*
newLine =
"<li>" +
"<a href='" + link + "'>" +
title +
"</a>" +
"</li>";
ToC += newLine;
*/
});
//ToC += "</ul>" + "</nav>";
var $divanch=$("<div id='sticky-anchor'>");
var $divsticky=$("<div id='sticky'>");
var $atoc=$("<a href='#toc'>").html("☰ Table of Contents");
$divsticky.append($atoc);
jQuery(".page-node-add-application #page").append($divanch);
jQuery(".page-node-add-application #page").append($divsticky);
jQuery(".page-node-add-application #page").prepend($nav);
});