2013-05-22 55 views
5

我有一個表格項目列表,當按下複製按鈕時,所有的表格項目連接成一個文本框,得到選中,並得到放在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> 

我需要的是格式化的,因爲當按下複印按鈕,生成的文本會連接在一個整潔的方式。我可以做到這一點,像這樣:

名稱:約翰
服務類型:全
金額:$ 125

但我也需要,如果沒有選項在選擇不換行下拉框,就像這樣:

名稱:約翰
金額:$ 125

相反的:

名稱:約翰

金額:$ 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> 
+0

你想要一些奇怪的東西......但只要我從HTML和選擇HTML元素知道,你不能格式化這樣的選項(也許我錯了)。對不起。如果你想這樣做,你將不得不使用jQuery或類似的東西創建自己的select元素。我認爲是個性化你的選擇的最佳方式,因爲你將使用'divs',並且可以更具體地編輯它們 – DaGLiMiOuX

+0

抱歉讓它變得很奇怪,我只是編輯它以顯示更多我正在尋找的東西。我不確定我是否通過創建自己的select元素來理解你的意思。我的實際應用是用於我的業務的更大的表單,在這種情況下,每個員工都將使用此表單爲客戶帳戶創建評論,並且我們需要他們的結構相同且看起來專業,這意味着我可以不重做整個表格或任何東西,但如果有快速的方法來解決這個問題,我會非常高興。 –

+0

我們的網站只是更新到IE8,這不再工作:( –

回答

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"> 

我加入這行到你的按鈕,例如:

(document.data_entry.drop1.value.trim().length === 0) ? '' : '\n' + 
document.data_entry.drop1.value 

此檢查(你可以檢查任何你想要的條件。我只是用這個來檢查你是否選擇了「空白」,例如)如果你的select有一個值。如果沒有值,則會將''設置爲您的「回覆」文本。如果它包含某些內容,則會添加'\n' + document.data_entry.drop1.value

+0

謝謝!這完美適合我需要的。 –

+0

@JustinTennant不客氣! – DaGLiMiOuX

相關問題