在jQuery中控制引用

时间:2011-09-19 16:26:00

标签: javascript jquery

function eegetdropdownvalue_str(ctl){return ctl.selectedIndex>=0&&ctl[ctl.selectedIndex]?ctl[ctl.selectedIndex].value:''}

使用

调用上述函数
co.p1A10=eegetdropdownvalue_str(document.formc.p1A10);

我想将调用切换到jQuery以删除document.form引用但是执行此操作

co.p1A10=eegetdropdownvalue_str($('p1A10'));

不能正确引用控件 - 我该怎么做?

2 个答案:

答案 0 :(得分:2)

您的代码有两个问题。

首先$('p1A10')不引用任何内容。

jQuery选择器与css的工作方式几乎相同(如果不完全相同)。

所以,只要问问自己如何在CSS中引用有问题的对象,你就在那里。

我假设p1A10是对象的nameid。由于我们使用CSS / jQuery语法,这应该是一个id,尽管您可以选择其他属性,例如$("select[name='p1A10']")

要按ID引用对象,我们使用#字符(再次,就像在CSS中一样)。因此,我们可以通过$('#p1A10')选择您的节点。

第二个问题是您的函数期望DOM对象不是jQuery对象。为了保持代码的完整性,我们需要说$('#p1A10')[0]其中0是jQuery元素集合中的第一个元素。

我提供了两个例子来解释这个问题。一个使用您现有的基础设施,一个替换它。

http://jsfiddle.net/TD6Uu/5/

希望它有所帮助。

答案 1 :(得分:1)

如果标识为formc的表单和名称为p1A10的选择,您可以例如使用方法:

o.p1A10 = eegetdropdownvalue_str($('#formc select[name="p1A10"]').get(0));

如果不这样做,请使用确切的HTML结构