Javascript找到某个文本

时间:2012-07-16 16:31:24

标签: javascript jquery

我有一个表,其值从数据库显示,但在第8行第二列显示一个值,即8,这是一个加拿大省,即' Ontario'现在我想要省的名称而不是值。这是旧网站使用的,因此,我不想更改数据库中的数据,因为它的大小非常大。我想使用javascript,以便它只显示这个以供用户阅读而不是更改数据库中的值。

数据在表格中显示

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

这就是我想要的方式

如果值为&#34; 0&#34;它应该显示&#34;艾伯塔省&#34;

如果值为&#34; 1&#34;不列颠哥伦比亚省

如果值为&#34; 2&#34;马尼托巴

如果值为&#34; 3&#34;新不伦瑞克省

如果值为&#34; 4&#34;纽芬兰

如果值为&#34; 5&#34;新斯科舍省

如果值为&#34; 6&#34;西北地区

如果值为&#34; 7&#34;努勒维特

如果值为&#34; 8&#34;安大略

如果值为&#34; 9&#34;爱德华王子岛

如果值为&#34; 10&#34;魁北克

如果值为&#34; 11&#34;萨省

如果值为&#34; 12&#34;育空

&#34;谢谢,但表格与其显示价值的页面位于不同的页面上。它应该使用if else语句,如果第8行第二列显示&#39; 8&#39;然后该值应显示为&#39; Ontario&#39;

4 个答案:

答案 0 :(得分:0)

您希望使用select元素的selectedIndex属性,如下所示:

selectElement.options[selectElement.selectedIndex].innerText;

Demo

答案 1 :(得分:0)

简单:)

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

答案 2 :(得分: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());

答案 3 :(得分:0)

如果你想使用普通的Javascript,这将有效 -

假设你的select元素的id是“myselect”

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

这将给你安大略省而不是8,这是它的价值。然后,您可以使用通常使用的任何方法将其插入数据库。