0

我有一个 7 列的表,其中编辑模式是使用 javascript 处理的。单击行中的编辑将使 2 列可编辑。它们分别更改为下拉列表和文本框,并且将为该行显示“保存取消”选项。

在 Firefox 上保存作品,但不完全在 IE 上。IE 不会从下拉列表中获取值。它只保存文本框中的值。

这就是我选择对象的方式:

var jqInputs = $('input', nRow);
var jqSelect = $('select', nRow);

jqSelect[0].value  
jqInputs[0].value   //This is the textbox and it Works

我必须说页面的源代码没有显示选择标记的迹象。(当它已经处于编辑模式时)

4

2 回答 2

0

您可以使用val()jQuery 函数。

它规范了跨浏览器的值的读取和设置。它也适用于select元素。

你的代码不工作,因为当你得到jqSelect[0]你实际上有一个 DOM 元素。该select元素没有value属性。如果您想从选择中读取选定的选项,您需要遍历所有option元素并找到选定的元素(通过selected选项上的属性)。

这实际上就是jQuery.fn.val()这样做的。所以像这样使用它:

var selectedValue = jqSelect.val();
于 2013-03-20T20:07:07.067 回答
0

试试这个...

 jqSelect.eq(0).val()
 jqInputs.eq(0).val()

您必须使用 jQuery val() 函数来检索元素的值...

于 2013-03-20T20:08:23.517 回答