我想转换textarea字段中的所有+
符号,用户键入并解析该+
符号及其后面的文本,直到换行符转换为HTML input checkbox
。
例如,如果用户在textarea
中输入:
+ Feed the kittens
+ Call the doctor
+ Go buy grocery
我想将其解析为:
<input type="checkbox"><label>Feed the kittens</label>
<input type="checkbox"><label>Call the doctor</label>
<input type="checkbox"><label>Go buy grocery</label>
我需要将string
作为HTML
返回。
我创建了一个名为function
的{{1}},其中包含listNote(note)
note
中的文字。我应该怎么写这个?
答案 0 :(得分:1)
您可以在下面的代码中找到一个想法:
$(document).ready(function() {
$("#parseButton").click(function() {
var str = $("#mytext").val(); //get the text entered by user
var allLabels = str.split("+"); //split the text assuming that user will be writing data in required fashion
allLabels.shift(); //skip the 0th index of array which will be blank
var htmlString = "";
//iterate over all the tasks one by one to form html string
$.each(allLabels, function(index, value) {
htmlString += '<input type="checkbox"><label>' + value + '</label>';
});
//append the html to div
$("#myHtml").html(htmlString);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<textarea id="mytext" rows="4" cols="50">
+ Feed the kittens
+ Call the doctor
+ Go buy grocery</textarea>
<button id="parseButton">Parse</button>
</br>
</br>
Output:
<div id="myHtml"></div>
答案 1 :(得分:0)
以下是您需要做的事情:
textarea
内容拆分为单独的注释,要么拆分+
(但你需要忽略数组的第一项)或换行(但是你不能有多行注释)< / LI>
+
(一个简单的子字符串就足够了)希望它能让你开始!
答案 2 :(得分:0)
function change(){
var final="";
var res =$('textarea').val().split("+");
res.map(function(a){
if(a != ""){
final += '<input type="checkbox"><label>'+a+'</label>';
}
})
console.log(final)
$('body').append(final)
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea cols="20" rows="4" >+ Feed the kittens
+ Call the doctor
+ Go buy grocery </textarea>
<button onclick="change()">click</button>
&#13;