更改后获取html元素值

时间:2014-11-20 17:00:22

标签: javascript jquery html

在视图中,我试图在我更改之后检索html输入框的值。换句话说,页面加载

<input id="input_one" type="text" value = "apple" />

当页面打开时,输入框中包含单词apple。我点击这个输入框,删除单词apple,然后写下单词&#34; orange&#34;相反。当我做以下事情时:

$('#input_one').click(function() {
    console.log($('#input_one').attr('value'));
});

结果是&#34; apple&#34;不是橙色。有没有办法在不提交表格的情况下获得我刚刚输入的新值?我试图在页面上使用javascript进行客户端验证,如果值是什么,提交表单,否则显示消息&#34;值必须是&#34;

也许我可以做点像

 $('#input_one').attr('value', 'new value'); 

但是我如何获得刚刚放入的新值?这个新值存储在哪里? innerHTML的?或者文字()可能吗?

3 个答案:

答案 0 :(得分:3)

attr()将获取<input>属性,这是该元素的初始值。

元素的当前值是属性。如果我们想获得任何元素属性:

$('#input_one')[0].value;    
$('#input_one').prop('value');

然而, jQuery为您提供了完美的方法.val(),

$('#input_one').val();

What is the difference between attribute and property?

答案 1 :(得分:1)

请尝试.val()

$('#input_one').val();

答案 2 :(得分:0)

尝试这样的事情:

$("#input_one").blur(function() {
   alert(this.value); 
});

每次将其置于焦点外时,都会警告输入框的新值。