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

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

為什么我的破折號/連字符在 onkeup javascript 后消失了

為什么我的破折號/連字符在 onkeup javascript 后消失了

慕無忌1623718 2023-11-12 22:29:42
我正在嘗試在 JavaScript 中用破折號/連字符替換空格字符。我讓大部分代碼正常工作,以便它在字符之間的每個空格后添加破折號(我不想連續使用 2 個破折號/連字符),但是一旦我擊中另一個字符,破折號就會消失。也許我的代碼格式不正確?我正在嘗試創建類似 LinkedIn 的東西,當您創建公司頁面時,它會要求您創建公司 URL。當您點擊空格時,它會將其替換為破折號/連字符。function addHyphen(element) {  let ele = document.getElementById(element.id);  ele = ele.value.split('-').join(''); // Remove dash (-) if mistakenly entered.  let finalVal = ele.replace(/\s+/g, '-');  document.getElementById(element.id).value = finalVal;  document.getElementById("result").innerHTML = finalVal;}<!DOCTYPE html><html><head>  <title>Add Hyphen to a text using JavaScript</title></head><body>  <div>    <input type="text" id="tbNum" onkeyup="addHyphen(this)" placeholder="Type some values here" />  </div>  <div>    <label id="result"></label>  </div></body></html>
查看完整描述

1 回答

?
MM們

TA貢獻1886條經驗 獲得超2個贊

你可以做這樣的事情:


const $result = document.getElementById("result");


function addHyphen($el) {

  $el.value = hyphenize($el.value);

  $result.innerHTML = $el.value;

}


function hyphenize(str) {

  return str

    .replace(/[^a-z0-9]/gi, '-') // Replace non-alphanumerical chars with '-'

    .replace(/-+/g, '-'); // Deduplicate them

}

<div><input type="text" id="tbNum" onkeyup="addHyphen(this)" placeholder="Type some values here" /></div>

<div><label id="result"></label></div>


查看完整回答
反對 回復 2023-11-12
  • 1 回答
  • 0 關注
  • 170 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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