当前位置: 首页 > 知识库问答 >
问题:

将文本区域中的少量文本更改为粗体

督飞鸣
2023-03-14

说我有这条短信

Lorem ipsum dolor sit amet,是一位杰出的献身者。

我想大胆一点

Lorem ipsum dolor sit amet,是一位杰出的献身者。

如果我用Javascript来做这件事

function myFunction(obj) {
  var text1 = "Lorem ipsum ";
  var text2 = "dolor sit amet";
  var text3 = ", consectetur adipiscing elit.";
  text2.bold();
  
  obj.value = text1 + text2 + text3;
}
<textArea onmouseup=myFunction(this)>Lorem ipsum dolor sit amet, consectetur adipiscing elit</textArea>

我似乎不能加粗文本,有什么想法吗?

共有3个答案

余靖
2023-03-14

据我所知,我们不能样式文本区域,也不接受任何超文本标记语言。

text2=text2。粗体()

返回多尔坐阿梅特

但它将显示为带有b标记的文本。

贺宝
2023-03-14

结果应该这样存储

function myFunction(obj) {;
  var text1 = "Lorem ipsum ";
  var text2 = "dolor sit amet"
  var text3 = ", consectetur adipiscing elit.";
  text2 = text2.bold();

  obj.value = text1 + text2 + text3;
}

更多信息:https://www.w3schools.com/jsref/jsref_bold.asp

白志勇
2023-03-14

由于无法在textarea中设置文本样式,
以下是一个使用内容可编辑的div的解决方案:
(灵感来源于我对另一个问题的解决方案:使用JavaScript更改选定文本的字体)

function changeStyle(style) {
  var sel = window.getSelection(); // Gets selection
  if (sel.rangeCount) {
    // Creates a new element, and insert the selected text with the chosen style
    var e = document.createElement('span');
    e.classList.add(style.value); // Selected style (class)
    e.innerHTML = sel.toString(); // Selected text

    // https://developer.mozilla.org/en-US/docs/Web/API/Selection/getRangeAt
    var range = sel.getRangeAt(0);
    range.deleteContents(); // Deletes selected text…
    range.insertNode(e); // … and inserts the new element at its place
  }
}
.editable {
  width: 360px;
  height: 120px;
  border: 1px solid #ccc
}

.editable .span-0{ /* Added to reset styles correctly */
  font-weight: normal;   /* Reset b */
  text-decoration: none; /* Reset u */
  font-style: normal;    /* Reset i */
}

.editable .span-b{
  font-weight: bold;
}

.editable .span-u{
  text-decoration: underline;
}

.editable .span-i{
  font-style: italic;
}
Highlight text and change style<br>
<select id="select_font" onchange="changeStyle(this);">
  <option value="span-0" selected>None</option>
  <option value="span-b">Bold</option>
  <option value="span-u">Underlined</option>
  <option value="span-i">Italic</option>
</select>
<div contenteditable="true" class="editable">
  Some Content
</div>
 类似资料:
  • 我可以用代码设置文本粗体: 是的,cell有粗体风格,但它有另一种字体。它有(尺寸:11)。如果我创建没有样式的单元格,我会得到这个单元格:(大小:10)。 好吧,那我试试别的方法: 没有区别。我得到(尺寸: 11)。 但为什么呢?我怎样才能修复它?我希望所有单元格(加粗或不加粗)具有相同的字体名称和大小。我不想手动设置字体。

  • 我有一个带有一些TextArea元素的GUI来显示信息。由于GUI将对keyevents做出反应,我在场景元素中添加了一个EventHandler。因为我不想为每个文本区域添加一个EventHandler,所以我禁用了它们以防止它们聚焦,因为这样场景的EventHandler就不再工作了。现在我有一个问题:文本显示为灰色,不再是黑色,尽管我在css文件中更改了它。你知道为什么文本不是黑色的吗?我该

  • 我使用的是JavaFX 8,有一个只读的TextArea,根据具体情况显示确认消息或错误消息。我希望确认消息有黑色文本,但我希望错误消息有红色文本。我如何在JavaFX 8中做到这一点?就目前而言,我更喜欢用编程的方式来完成,但是我当然也对如何在FXML中完成这个程序的下一个草案感兴趣。 从本质上讲,我正在显示一个 tableView,并让用户编辑 TableView 单元格中的信息。如果用户在单

  • 问题内容: 首先,我对Java非常基础。我正在尝试浏览.txt文件并将其内容加载到文本区域。我已经完成了该部分,直到从JFileChooser接收文件为止,现在我不知道如何做其余的工作。 问题答案: 使用所有Swing文本组件都支持的read(…)和write(…)方法。简单的例子:

  • 我开始为一个项目制作这个网页,到目前为止是这样的: 但是我想把文本区域放在另一个上面,而不是并排放置 我希望它看起来怎么样: 谁能帮帮我吗 https://i.stack.imgur.com/ZzsKS.png

  • 我需要在我的程序中使用文本区域,我也需要它是只读的。 这是我创建textArea的主程序的一部分: 这是我的css文件的一部分: 如果我删除行:ta.setDisable(true);Css的工作方式就像我希望它工作一样。但是在我将禁用 true 设置为 true 之后,它只会使文本区域透明,这使得文本非常难以阅读,并且背景颜色也不是我想要的。 有没有其他方法可以只读设置文本?或者有没有办法在禁用