【发布时间】:2016-05-21 19:45:21
【问题描述】:
我正在尝试实现以下内容。
用户在文本框中输入一个句子,然后创建一个表格。一个例子就是这样。
输入:“这就是我想要实现的”
结果:
目前,我有以下内容,它使用每个单词的第一个字母为我构建标题,但是这些字母会重复自己。我现在需要构建表体。我可以使用相同的逻辑将每个单词放入表格中,但我正在努力做的是将单词添加到表格的相应部分下。例如,单词'This' 在第一行的第三个<td> 中。我做了很多尝试,但都没有成功,所以将 make tableBody 函数保留为空白画布。我的一个想法是为第一行中的每个项目添加第一个字母的 id,然后我可以稍后将其用于完整的单词,但无法将它们放在适当的第一个字母下。
var $ = jQuery.noConflict();
var app = app || {};
(function() {
"use strict";
app.initialize = {
init: function() {
app.checkWord.splitWords();
}
},
app.checkWord = {
splitWords: function() {
$(".calculate").click(function(){
app.checkWord.firstLetter();
var result = $("#text-input").val().split(" ");
app.createTable.tableHeader(result.sort());
});
},
firstLetter: function() {
}
},
app.createTable = {
tableHeader: function(sentence) {
$.each(sentence, function(index, item) {
$(".words-row").append("<td>" + sentence[index].charAt(0).toUpperCase() + "</td>");
});
},
tableBody: function() {
}
}
app.docOnReady = {
init: function() {
app.initialize.init();
}
};
$(document).ready(app.docOnReady.init);
$(window).resize(app.docOnResize.init);
})(jQuery);
table {
border-collapse: collapse;
}
table,
th,
td {
border: 1px solid black;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="header">
</div>
<div id="main">
<div>
<textarea id="text-input" name="textarea" rows="5" cols="25">This is what I want to achieve</textarea>
<button class="calculate">Calculate</button>
</div>
<div id="results-table">
<table>
<tbody>
<tr class="words-row"></tr>
</tbody>
</table>
</div>
</div>
【问题讨论】:
标签: javascript jquery html html-table