标签:javascript
BS项目开发中,我们经常需要对数据进行判断,在特定的场合,需要对输入的字数进行限制,最近遇到了一个问题。
平时都是在后台进行数据验证,可是后台验证有一个确定,就是反应比较慢,代码如下。
if(txtCheckTest.Text.Count() >10)
{
modelState.AddModelError("ReadDescription","阅办事项不能超过10个字!");}效果如下:
最大的问题是,客户在输入过程中,其实并不知道输入了多少字,等到提交的时候发现输入内容不符合要求,这样,用户体验度不好。假如我们在用户输入过程中给予及时的提醒,那么,就可以很方便的将消息反馈给客户,增加用户体验度。
前台代码如下:
<scriptlanguage="javascript" type="text/javascript">
//为文本框设置提示语
function SetPromptAndFormat(id, prefix,suffix, defaultValue) {
var inputCtrl = $("#" +id);
var formatPrompt = prefix +defaultValue + suffix;
if (inputCtrl.val().length < 1){
//inputCtrl.val(formatPrompt);
//inputCtrl.addClass("prompt");
}
inputCtrl.blur(function () {
if (inputCtrl.val().length <1) {
//inputCtrl.val(formatPrompt);
//inputCtrl.addClass("prompt");
} else {
inputCtrl.val(prefix +inputCtrl.val() + suffix);
}
});
inputCtrl.focus(function () {
if (inputCtrl.val() ==formatPrompt && inputCtrl.attr("class") =="prompt") {
inputCtrl.removeClass("prompt");
inputCtrl.val("");
} else {
var removeprefix =inputCtrl.val().substring(prefix.length, inputCtrl.val().length);
var removesuffix =removeprefix.substr(0, removeprefix.lastIndexOf(suffix));
inputCtrl.val(removesuffix);
}
});
}
$(document).ready(function() {
SetPromptAndFormat("Data_Title", "关于","的事项确认", "***");
SetTextareaMaxlength("Data_Title", 30);
SetTextareaMaxlength("Data_Abstract", 800);
SetTextareaMaxlength("Data_Explain", 100);
SetTextareaMaxlength("Data_Description", 300);
});
</script>这样写的话,用户在输入数字超过限制时,将不能继续输入,可以最大限度的节约客户时间,提高体验度。
标签:javascript
原文地址:http://blog.csdn.net/u010942465/article/details/45370917