我正在使用javascript来显示sms_textbox的重复字符显示。只允许160个字符。
<script type="text/javascript">
var characterLimit = 160;
$(document).ready(function () {
$("#lblremaingCharacters").html(characterLimit);
$("#txtmessage").bind("keyup", function () {
var characterInserted = $(this).val().length;
if (characterInserted > characterLimit) {
$(this).val($(this).val().substr(0, characterLimit));
}
var characterRemaining = characterLimit - characterInserted;
$("#lblremaingCharacters").html(characterRemaining);
});
});
</script>
但是这个脚本仅在页面加载时才能正常工作,而在其他asp按钮点击事件触发时无效。
答案 0 :(得分:2)
尝试替换document.ready函数
中的characterLimit $(document).ready(function () {
var characterLimit = 160;
$("#lblremaingCharacters").html(characterLimit);
现在,对于您的所有活动,characterLimit将像全局值一样工作。
现在你的脚本应该是
<script type="text/javascript">
$(document).ready(function () {
var characterLimit = 160;
$("#lblremaingCharacters").html(characterLimit);
$("#txtmessage").bind("keyup", function () {
var characterInserted = $(this).val().length;
if (characterInserted > characterLimit) {
$(this).val($(this).val().substr(0, characterLimit));
}
var characterRemaining = characterLimit - characterInserted;
$("#lblremaingCharacters").html(characterRemaining);
});
});
</script>
答案 1 :(得分:0)
请尝试在 aspx页面中的 pageLoad 功能中添加脚本,而不是$(文档)。就像:
<script type="text/javascript">
var characterLimit = 160;
function pageLoad() {
$("#lblremaingCharacters").html(characterLimit);
$("#txtmessage").bind("keyup", function () {
var characterInserted = $(this).val().length;
if (characterInserted > characterLimit) {
$(this).val($(this).val().substr(0, characterLimit));
}
var characterRemaining = characterLimit - characterInserted;
$("#lblremaingCharacters").html(characterRemaining);
});
}
</script>
答案 2 :(得分:0)
使用$(document).ready()
您需要使用
function pageLoad()
{
//Your Code
}
这将解决问题