亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

段落標記中設置的最大限制,內容可編輯為 true

段落標記中設置的最大限制,內容可編輯為 true

浮云間 2023-12-04 14:29:01
我有一個段落標簽,它是可編輯的,我想對其設置最大限制。超過最大限制后,不應輸入字符。我嘗試過,但沒有成功。<p id="business_title" contentEditable="true" onkeypress="limitMessage(this.id,event);">hhhhh</p>jquery 是:function limitMessage(id,e){        var tval = $('#'+id).val(),            tlength = tval.length,            set = 10,            remain = parseInt(set - tlength);        if (remain <= 0 && e.which !== 0 && e.charCode !== 0) {            $('#'+id).val((tval).substring(0, tlength - 1))        }    }
查看完整描述

2 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

您忘記了 jQuery CDN 并且正在使用p而不是input,那么您需要使用html()而不是val()因為該p元素不需要值。


而且你不需要寫$(this).val((tval).substring(0, tlength - 1)),因為它會返回到句子的開頭,所以只需使用 apreventDefault()來停止寫。


嘗試這個 :


function limitMessage(id, e) {

  var tval = $('#' + id).html(),

    tlength = tval.length,

    set = 10,

    remain = parseInt(set - tlength);

  if (remain <= 0 && e.which !== 0 && e.charCode !== 0) {

    e.preventDefault();

  }

}

body {

  background-color: white;

}

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<p id="business_title" contentEditable="true" onkeypress="limitMessage(this.id,event);">hello</p>


查看完整回答
反對 回復 2023-12-04
?
慕碼人2483693

TA貢獻1860條經驗 獲得超9個贊

請嘗試這個。


function limitMessage(id, e) {

  var tval = $('#' + id).html(),

    tlength = tval.length,

    set = 10,

    remain = parseInt(set - tlength);

  if (remain <= 0 && e.which !== 0 && e.charCode !== 0) {

    $('#' + id).html((tval).substring(0, set + 1));

    e.preventDefault();

  }

}

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<p id="business_title" contentEditable="true" onkeypress="limitMessage(this.id,event);">hhhhh</p>

解釋

  1. 您使用的是 .val 而不是 .html。

  2. 當您將字符串插入回去時,光標重置為字符串的開頭,并添加新的字符,并修剪字符串末尾的字符。為了解決這個問題,我添加了 e.preventDefault 以阻止添加字符。

查看完整回答
反對 回復 2023-12-04
  • 2 回答
  • 0 關注
  • 162 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號