在文本框中设置文本格式
Format a text in the textbox
我试图将选定的文本格式化为文本框内的粗体,但没有发生。然而,它发生在span/div中。我的代码
<html>
<head>
<title>Untitled Document</title>
<script type="text/javascript">
function FormatSelectedWord(txtBox,style)
{
var selectedText = document.selection
? document.selection.createRange().text
: txtBox.value.substring(txtBox.selectionStart,txtBox.selectionEnd);
if(selectedText!='')
{
var newText='<'+style+'>'+selectedText+'</'+style+'>';
txtBox.value=txtBox.value.replace(selectedText,newText)
spOutput.innerHTML=txtBox.value;
}
}
</script>
</head>
<body>
<input type="text" name="txtBox"> </input>
<input type="button" value="Bold" onclick="FormatSelectedWord(txtBox,'b')">
<span id="spOutput"></span>
</body>
</html>
是否可以在文本框中执行。如果有,那是怎么回事?
谢谢
不可以在文本框中设置文本样式。如果需要可编辑的格式化文本,可以设置div或span的contentEditable=true
与其重新发明轮子,不如看看实现TinyMCE或其他类似的东西——这很容易。这是一个非常常见的功能,它被称为"富文本编辑器",如果你想去谷歌搜索:)
试图自己添加这种功能是一个巨大的麻烦,你真的不想参与进来:)
这是我认为你想要的一个例子:http://jsfiddle.net/6gQJC/1/
,这是你问的:http://jsfiddle.net/6gQJC/
txtBox is undefined
所以这个:
<input type="text" name="txtBox"> </input>
必须是
<input type="text" id="txtBox" name="txtBox"> </input>
和
function FormatSelectedWord(txtBox,style)
{
var textbox = document.getElementById('textBox');
相关文章:
- 测试文本区域中的特定文本格式
- 使用jQuery重置文本,同时存在AJAX调用
- 防止Javascript注入(但保留文本格式和图像)
- 我有来自OpenWeatherMap API的风向数据,数据以0到360度表示.我想将其转换为文本格式
- 我可以重置文本输入而不清除它吗
- Ng模型在AngularJS中重置文本区域后未更新
- 设置要显示的文本格式的指令
- 在 JavaScript 中重置文本区域高度
- 阻止按钮重置文本框值
- IndexedDB:将 url 映射到接受的 markdown/HTML 文本格式标记的正确架构
- 阻止重置文本区域
- 时刻.js文本格式和类
- 在动态创建的文本框中设置文本格式
- 购物清单 Javascript 程序列表项的文本格式不正确
- 使用 drive.files.export (Drive API v3) + API 密钥以文本/纯文本格式获取公共 G
- 如何使用 jQuery 将段落的原始文本格式放入 HTML 段落元素中
- 如果文本格式化为 html,则使用 angularjs 显示更少/更多的文本
- 如何在打印时保留存储在数据库中的文本格式
- Google Apps脚本中Google文档中字符串的文本格式
- jQuery之后的文本格式问题