0

我有以下代码:

$(document).ready(function() {
    var phone_number = $('input[name=phone_number]').val();
    alert(phone_number);
});

问题是 phone_number 在页面加载时始终具有价值。用户可以在输入字段中更改电话号码 - 但脚本总是会获得过时的值。我该如何解决这个问题?

非常感谢您的帮助!

4

4 回答 4

2

单击任何按钮时调用此函数
假设您有一个按钮

<input type="button" value="Get Value" id="getvalue" />

点击获取该字段的值

$(document).ready(function() { 
    $('#getvalue').click(function() {
         var phone_number = $('input[name=phone_number]').val();
         alert(phone_number);
    });
});
于 2013-02-12T10:24:36.727 回答
1

如果您在 document.ready... 中编写此 Get Value 脚本,它总是为您提供默认值..

尝试在任何一个元素单击事件中获取值脚本...

因为:这里document.ready = Page Load事件...

试试这个小提琴:http: //jsfiddle.net/RYh7U/74/

于 2013-02-12T10:25:29.140 回答
1

asifsid88 是正确的,但是如果用户可以更改电话号码,那么在更改电话号码后,您需要字段的值,所以我认为您应该使用更改事件而不是单击事件。

于 2013-02-12T10:33:12.077 回答
1

在这里,您已经在document.ready函数上编写了这个脚本,这就是它返回过时值的原因。
将此脚本放入某些事件中,即单击、按键、模糊、onchange 等...这样您就可以获得更改后的值。

<input type="text" name="phone_number" id="phone_number" value="Get Value"/>

$(document).ready(function() { 
    $('#phone_number').blur(function() {
         var phone_number = $(this).val();
         alert(phone_number);
    });
});
于 2013-02-12T10:34:09.293 回答