我的jQuery代码有什么问题?给出错误,它不是一个功能

use*_*896 -7 wordpress jquery text input

我在Wordpress中使用它,所以我试图将$符号更改为jQuery,但这也不起作用.这是脚本:

<script>
    jQuery().ready(function($) {
       var name = $('#user-submitted-posts-wrapper').data('name');
       if ( name != '') $('.usp-title input').eq(0).value(name);
    });
    </script>
Run Code Online (Sandbox Code Playgroud)

我收到错误:

 $(...).eq(...).value is not a function
Run Code Online (Sandbox Code Playgroud)

可能是什么问题?我试图用我得到的文本预填充输入字段.输入字段具有name属性,没有class或ID属性.那更好用吗?我究竟做错了什么?

Dav*_*mas 6

你把jQuery的val()方法与DOM value属性混淆了; 使用jQuery对象.val(),使用DOM节点.value; 他们不可互换.

参考文献:


Fab*_*tté 5

因为$().value是undefined(并不是一个功能).

该value属性属于HTMLInputElementDOM接口,jQuery对象没有该名称的任何属性或方法.

jQuery对象提供了.val()设置元素value属性的方法:

$('.usp-title input').eq(0).val(name);
Run Code Online (Sandbox Code Playgroud)

您还可以通过以下.get方法从jQuery对象检索DOM元素引用来直接获取和设置DOM元素属性:

$('.usp-title input').get(0).value = name;
$('.usp-title input')[0].value = name; //shorthand form
Run Code Online (Sandbox Code Playgroud)