jQuery html元素属性名称

mpl*_*jan 0 jquery dom

我被要求帮助添加onChange一个选择,所以我想出了这个:

$("select[name=component]").change(function() {
  $("input[name=Code]").val(JSONObject[$(this).selectedIndex].code;  
  $("input[name=Category]").val(JSONObject[$(this).selectedIndex].category;  
  $("input[name=UOM]").val(JSONObject[$(this).selectedIndex].uom;  
});
Run Code Online (Sandbox Code Playgroud)

提问者告诉我,直到他换$(this)到了才行this

这对我来说才有意义,如果jQuery不使用我认为是jQuery对象的名称selectedIndex.

如果没有,我只需要使用.attr("selectedIndex")吗?

jQuery是否将对象从$(this)(jQuery对象)动态转换为表单元素或选择对象?

Pek*_*ica 5

jQuery对象实际上不是DOM元素的扩展:DOM元素成为jQuery的子元素.

它位于0jQuery对象的成员中,因此如果出于某种原因需要使用jQuery对象(在本示例的上下文中,@ nickf是疯狂的 - 您只需使用它this.selectedIndex),就必须使用

$(this)[0].selectedIndex
Run Code Online (Sandbox Code Playgroud)

访问原始属性.

  • 值得指出的是,写'$(this)[0]`是疯了. (2认同)