2012-07-16 49 views
-3

我有一個表格,其值從數據庫中顯示,但在第8行第二列,它顯示了一個值,即8這是一個加拿大省,即「安大略省」,現在我想要省名而不是價值觀。這是舊網站使用的,因此,我不想更改數據庫中的數據,因爲它的大小非常大。我想使用JavaScript,以便它只顯示用戶讀取而不是更改數據庫中的值。Javascript找到一個文本

的數據表中的

<table> 
<tr></tr> 
...8th row<tr><td></td><td>Value lies here i.e. '8'</td></tr> 
</table> 

這裏displaed是我怎麼想它

如果值爲「0」,它應該顯示「阿爾伯塔」

如果該值爲「 1「British Columbia

如果值爲」2「Manitoba

如果v ALUE是「3」新不倫瑞克

如果該值是「4」紐芬蘭

如果該值是「5」新斯科舍省

如果該值是「6」西北地區

如果的值是「7」努勒維特

如果該值是「8」安大略

如果該值是「9」太子島

如果該值是「10」魁北克

如果該值是「11」薩省

如果該值是「12」育空

「謝謝,但形式是一個不同的頁上比它顯示的值「它應該使用一個if else語句,如果第8行第二列顯示'8',那麼該值應顯示爲'Ontario'

+3

真的不清楚你在問什麼。 'value'屬性是表單發送的內容,'

+0

您是否在表格中以及在選擇框中顯示數據? – kiranvj 2012-07-16 16:39:56

+0

我想我明白了。你想將選擇菜單轉換爲表格? – 2012-07-16 16:44:22

回答

0

似乎是一個壞的解決方案,但一個簡單的選擇

var cell = $('#tableId tr:eq(7) td:eq(1)'); 
var txt = cell.text(); 
console.log(txt); 
var selectOption = $("#selectId option").eq(parseInt(txt,10)) 
cell.text(selectOption.text()); 

編輯:

var provs = ["Alberta","British Columbia"...]; 
var cell = $('#tableId tr:eq(7) td:eq(1)'); 
var index = parseInt(cell.text()); 
cell.text(provs[index].text()); 
+0

謝謝,但文本顯示在表中請參閱更新的問題 – user1529450 2012-07-16 16:38:57

+0

非常感謝謝謝 – user1529450 2012-07-16 20:20:40

0

您想要使用selectselectedIndex屬性像這樣的元素:

selectElement.options[selectElement.selectedIndex].innerText; 

Demo

+0

謝謝,但文本顯示在表中,請參閱更新的問題 – user1529450 2012-07-16 16:40:26

0

簡單:)

$('option:selected').val(); 
+0

謝謝但文本顯示在表中請參閱更新的問題 – user1529450 2012-07-16 16:38:39

0

如果你想使用普通的JavaScript,這將工作 -

假設你的選擇元素的ID是「myselect」

var name = document.getElementById('myselect').options[document.getElementById('myselect').selectedIndex].text; 

這會給你安大略省,而不是8,這是它的價值。然後,您可以使用通常使用的任何方法將其插入數據庫。

+0

,但文本顯示在表中請參閱更新的問題 – user1529450 2012-07-16 16:40:05

+0

謝謝,但我不想更改數據庫的值 – user1529450 2012-07-16 16:51:17

相關問題