以下案例:使用以下内容呈现页面...
<input class="textInput error" id="accountMailaddress" name="user[email]" size="30" type="text" value="some@mailaddress.com">
所以我看到已经填写了“some@mailaddress.com”的输入。 如果用户更改其中的文本,则输入的value属性在我的dom-inspector中不会更改。所以我假设可以测试用户只是根据原始值键入的文本(在value属性中)。
我该怎么办?
提前谢谢。
更多信息......
e.g。我正在每个按键上记录$('.textInput').val();
,val();始终保存用户输入的当前文本。我只需要将原始值存储在变量中吗?
答案 0 :(得分:2)
$('#accountMailaddress').val() == $('#accountMailaddress')[0].defaultValue
另外,defaultValue为cross browser compatible
答案 1 :(得分:0)
你的意思是这样的:
var defaultText = $('.textInput').val();
if($('.textInput').val() == defaultText){
// Email address matched
}
答案 2 :(得分:0)
我认为使用jquery attr方法可以工作,而不必先存储默认值。像这样:
if ($('.textInput').val() == $('.textInput').attr('value'){
// Email address matched
}
答案 3 :(得分:0)
你可以做这样的事情
var previousValue ;
$('.textInput').focus(function () {
previousValue = $(this).val();
})
.change(function () {
if(previousValue==$(this).val())
//then do something
});
但上面是用户只更改一次以使其全面
$('.textInput').focus(function () {
if($(this).data("key")!==undefined)
$(this).data("key")= $(this).val();
})
.change(function () {
if($(this).data("key")==$(this).val())
//then do something
});
我也非常喜欢defaultValue属性..