我想要完成的是允许用户在页面上生成表格,允许用户创建新列,并使列名称显示并映射到,同一栏。
目前,我能够构建表,并且我有一个生成的表,将其列标题映射到选择框。我在此页面上有一个刷新按钮,单击该按钮时,刷新选择框标题(如果用户创建新列)。
当我刷新选择框时,正确的标题会下拉,但是应该与它们一起选择的数据不会被映射(我可以通过我的console.log语句看到这一点)这只在我创建列时发生。 。列被附加到表中,但是当我执行类似
的操作时$('#dropHeader').change( function() {
firstArray = [];
console.log('First Select Box Changed');
var table = document.getElementById("theTable");
currentValue1 = ($(this).val());
console.log(currentValue1);
var elem1 = $("#theTable td:contains("+ currentValue1 +")");
console.log(elem1);
var index1 = elem1.index('#theTable td');
console.log(index1);
index1+=1;
$("#theTable tr td:nth-child("+ index1 +")").each(function () {
firstArray.push($(this).text());
});
firstArray.shift();
});
这仅适用于最初属于表的一部分的列。
可能有帮助的是我记录的console.log jQuery选择器语句:
普通选择器声明:
[td,prevObject: m.fn.init[1], context: document, selector: "#theTable td:contains(Header 2)"]
列添加选择器语句:
[prevObject: m.fn.init[1], context: document, selector: "#theTable td:contains(New Column↵)"]
我已经看了一会儿,我相信问题在于jQuery选择器语句。我注意到的一件事是jQuery选择器语句末尾的返回信号。
任何帮助将不胜感激!谢谢!