在javascript中用双引号截断文本
truncate text with double quotes in javascript
本文关键字:文本 javascript 更新时间:2023-09-26
我正在使用下面的代码片段来截断文本,它运行良好,除非文本包含双引号。
function truncateText(str, len) {
return (str.length > len ? $.trim(str).substring(0, len).split(" ").slice(0,-1).join("") :str);
}
例如:len=10str="helllllllo wolllld"-工作正常。
但在这种情况下:
len=10str="hellllll"o wolllld"-未按预期工作。
我尝试过做以下事情,但没有成功:
str = str.replace('"', ''"');
str = str.replace('"', '"');
str = str.replace('"', ''x22');
声明:
var str = "helllll"o world";
不是有效的javascript。你需要转义中间的引号,它才能正常运行。
尝试:
var str = "helllll'"o world";
或
var str = 'helllll"o world';
使用以下函数。你可以随心所欲地使用它
我也更改了truncateText()函数,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js " type="text/javascript"></script>
<script>
function truncateText(str, len) {
return (str.length > len ? $.trim(str).substring(0, len) : str);
}
var mystr = "helllllll'"o wor'"lllld";
mystr = mystr.replace(/'"/g, '');
alert(truncateText(mystr,10));
</script>
您可以在javascript函数中尝试
return '"'+str.trim(len).replace('"','')+'"';
我试过了,结果成功了。
<input type=button onclick='truncateText("Hello'" world",10)'/>
这给了我Hello世界(没有"中间")
问题不在javascript函数中,但事实证明,我必须在服务器端对返回的字符串进行html解码。
相关文章:
- Servlet对浏览器上显示的纯文本Javascript的响应
- 删除选定文本javascript前后的特定文本
- 在两个括号内插入文本 - Javascript
- 获取文本javascript+iframe
- 语音到文本JavaScript,HTML5
- 使用谷歌融合表格地图的网页文本/JavaScript未显示
- 在显示和隐藏文本(javascript)之间切换
- 使用哈希标记保存文本(Javascript - PHP - MySQL)
- 停止闪烁文本 JavaScript
- 如何计算一个字母在文本javascript中出现的次数
- 有效地突出显示文档中的文本 (JavaScript)
- 将变量传递给文本 javascript
- 如何暂停文本 Javascript / var textarray
- 从段落中搜索文本 - Javascript
- 如何使用 id 输入类型=“文本”JavaScript 中的值设置自动 2 个十进制数
- 替换文本 JavaScript .append()
- 语音到文本JavaScript识别医学词典
- 在提取的文本 JavaScript 中搜索关键字
- 如何在HTML中将文本javascript显示为正常正文的一部分
- 单击图像时更改段落文本(Javascript)