繁体   English   中英

原生js defaultValue和jQuery prop(defaultValue)之间是否有区别(应该有)?

[英]Is there (should there be) any difference between native js defaultValue and jQuery prop(defaultValue)?

我对本地javascript defaultValue功能感到困惑。 我知道必须设置html输入的值,并且该值是初始默认值。

当我在点击事件中包含特定输入(文本)元素时,我想将其恢复为其默认值。 (取消按钮)

//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());

当prop('defaultValue')起作用时,本机defaultValue属性为什么不起作用? 这些本质上不应该相同吗? 初始值在输入元素中设置为value =“ bla bla bla”。

我可以使用jQuery来工作,但是我只是想知道-我错过了什么吗?

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

name_person[0].defaultValue

要么

name_person.get(0).defaultValue

jQuery中使用attr的默认值不是prop

只是尝试知道一些东西..sample html

<input type="text" name="usrname" value="default"><br>
<input type="submit" value="Submit">

JS

$("input[type=submit]").click(function(){
$("input[type=text]").val(1);
    alert($("input[type=text]").prop("value"));  // it will return 1 
    alert($("input[type=text]").attr("value"));  // it will return default value


    alert($("input[type=text]")[0].defaultValue);  // @epascarello posted return default value



});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM