是否(应该)本机js defaultValue和jQuery prop(defaultValue)之间有什么区别?

bes*_*rld 1 javascript jquery default-value

我对本机javascript defaultValue功能感到困惑.我已经明白必须设置html输入的值,并且该值是初始默认值.

当我在click-event中有这个时,我想将特定的输入(文本)元素恢复为其默认值.(取消按钮)

//Restore values
var name_person = $(this).find('.nameOfPerson');       

//Attempt 1
name_person.val(name_person.defaultValue);
alert('restored value=' + name_person.val()); //This alerts nothing

//Attempt 2
name_person.val(name_person.prop('defaultValue')); //This alerts the default value
alert('restored value=' + name_person.val());
Run Code Online (Sandbox Code Playgroud)

为什么prop('defaultValue')的原生defaultValue属性不起作用?那些基本上不一样吗?初始值在input元素中设置为value ="bla bla bla".

我得到了它(使用jQuery),但我只是想知道 - 我错过了什么?

epa*_*llo 6

它不起作用,因为name_person是一个jQuery对象,而jQuery没有defaultValue.您需要引用DOM对象

name_person[0].defaultValue
Run Code Online (Sandbox Code Playgroud)

要么

name_person.get(0).defaultValue
Run Code Online (Sandbox Code Playgroud)