jquery html 标签内的文本区域 strip/remove
jquery textarea inside html tag strip/remove
我想计算 textarea 中的字符数,但我不想让它计算 html 标签。
片段:
$('#m-summary').keyup(function() {
var sumTxt=$('#m-summary').val().length;
if(sumTxt < 200) {
$('#result-summary').html("<span>200 / </span><span style='font- style:normal;font-weight:bold;'>"+sumTxt+"</span>");
}
else {
$('#result-summary').html("<span style='color:green'>200 / </span><span style='color:green;font-style:normal;font- weight:bold;'>"+sumTxt+"</span>");
}
}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="text-area">
<textarea name="m_summary" id="m-summary"></textarea>
<div id="result-summary">200 / 0</div>
</div>
我在 textarea 里面写:你好。计数长度 = 12.
$("#m-summary").text()
只会给你文本而不是 html 标签然后你可以这样检查长度:
var textval = $("#m-summary").text();
console.log(textval.length());
如果 html 包含在字符串中,那么您将需要一个 html 解析器来去除 html 然后计算字符串,例如 http://ejohn.org/blog/pure-javascript-html-parser/.这是如果我正确理解了问题,如果没有,你只是想在文本区域内尝试字符串的长度:
$("#m-summary").text().length;
我也希望您为此尝试原生 javascript:
document.getElementById("m-summary").value.length
使用:str.replace(/<\/?[^>]+(>|$)/g, "")
片段:
$('#m-summary').keyup(function() {
var sT=$('#m-summary').val().replace(/<\/?[^>]+(>|$)/g, "");
var sumTxt=sT.length;
if(sumTxt < 200) {
$('#result-summary').html("<span>200 / </span><span style='font- style:normal;font-weight:bold;'>"+sumTxt+"</span>");
}
else {
$('#result-summary').html("<span style='color:green'>200 / </span><span style='color:green;font-style:normal;font- weight:bold;'>"+sumTxt+"</span>");
}
}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="text-area">
<textarea name="m_summary" id="m-summary"></textarea>
<div id="result-summary">200 / 0</div>
</div>
我想计算 textarea 中的字符数,但我不想让它计算 html 标签。
片段:
$('#m-summary').keyup(function() {
var sumTxt=$('#m-summary').val().length;
if(sumTxt < 200) {
$('#result-summary').html("<span>200 / </span><span style='font- style:normal;font-weight:bold;'>"+sumTxt+"</span>");
}
else {
$('#result-summary').html("<span style='color:green'>200 / </span><span style='color:green;font-style:normal;font- weight:bold;'>"+sumTxt+"</span>");
}
}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="text-area">
<textarea name="m_summary" id="m-summary"></textarea>
<div id="result-summary">200 / 0</div>
</div>
我在 textarea 里面写:你好。计数长度 = 12.
$("#m-summary").text()
只会给你文本而不是 html 标签然后你可以这样检查长度:
var textval = $("#m-summary").text();
console.log(textval.length());
如果 html 包含在字符串中,那么您将需要一个 html 解析器来去除 html 然后计算字符串,例如 http://ejohn.org/blog/pure-javascript-html-parser/.这是如果我正确理解了问题,如果没有,你只是想在文本区域内尝试字符串的长度:
$("#m-summary").text().length;
我也希望您为此尝试原生 javascript:
document.getElementById("m-summary").value.length
使用:str.replace(/<\/?[^>]+(>|$)/g, "")
片段:
$('#m-summary').keyup(function() {
var sT=$('#m-summary').val().replace(/<\/?[^>]+(>|$)/g, "");
var sumTxt=sT.length;
if(sumTxt < 200) {
$('#result-summary').html("<span>200 / </span><span style='font- style:normal;font-weight:bold;'>"+sumTxt+"</span>");
}
else {
$('#result-summary').html("<span style='color:green'>200 / </span><span style='color:green;font-style:normal;font- weight:bold;'>"+sumTxt+"</span>");
}
}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="text-area">
<textarea name="m_summary" id="m-summary"></textarea>
<div id="result-summary">200 / 0</div>
</div>