如何格式化选择标记内的选项值文本?

Jus*_*ant 5 html html-select

我有一个表项列表,当按下复制按钮时,所有表项连接到一个文本框,被选中,并放在Windows剪贴板上.

框的格式如下:

<tr>
  <td>Name of Person:</td>
  <td><textarea name="name" rows="2" cols="30" id="name"></textarea></td>
</tr>
<tr>
  <td>Type of Service:</td>
  <td><select name="drop1" id="txt_drop1">
      <option value="">None</option>
      <option value="Type of Service: Minimal">Minimal</option>
      <option value="Type of Service: Normal">Normal</option>
      <option value="Type of Service: Full">Full</option>
      <option value="Type of Service: Premium">Premium</option>
    </select></td>
</tr>
<tr>
  <td>Dollar Amount:</td>
  <td><textarea name="amount" rows="1" cols="30" id="txt_info2"></textarea></td>
</tr>
<tr>
<td><textarea name="bigtextbox" rows="5" cols="30" id="txt_info2"></textarea></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

我需要的是格式化,因为当按下复制按钮时,生成的文本以一种整洁的方式连接起来.我可以这样做:

姓名:John
服务类型:全额
:125美元

但如果在下拉框中没有选择任何选项,我也需要不换行,如下所示:

姓名:约翰
金额:125美元

而不是:

姓名:John

金额:125美元

有没有办法将格式代码(例如'\n')应用于选项的值?现在,在单击复制按钮后,所有非框文本框都在连接代码中格式化,例如:

    <input type="button" style="font-weight:bold;" name="clipboard_copy" value="Copy" onClick="document.data_entry.bigtextbox.value = 'Name:&nbsp;' + document.data_entry.name.value + '\n' + document.data_entry.drop1.value + '\n' + 'Amount: $' + document.data_entry.amount.value>
Run Code Online (Sandbox Code Playgroud)

DaG*_*OuX 1

可能是我没听懂你的意思。我以为你想将option元素格式更改为select元素。如果您想在按下按钮后实现该格式,您可以尝试以下操作:

<input type="button" style="font-weight:bold;" name="clipboard_copy" value="Copy"
onClick="document.data_entry.bigtextbox.value = 'Name:&nbsp;' + 
document.data_entry.name.value + (document.data_entry.drop1.value.trim().length 
=== 0) ? '' : '\n' + document.data_entry.drop1.value + '\n' + 'Amount: $' + 
document.data_entry.amount.value">
Run Code Online (Sandbox Code Playgroud)

我将此行添加到您的按钮示例中:

(document.data_entry.drop1.value.trim().length === 0) ? '' : '\n' + 
document.data_entry.drop1.value
Run Code Online (Sandbox Code Playgroud)

这会检查(您可以检查您想要的任何条件。例如,我只是用它来检查您是否选择了“空白”)是否select有值。如果没有值,它将设置''为您的“响应”文本。如果它包含某些东西,它会添加'\n' + document.data_entry.drop1.value