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

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

使 HTML 'value' 屬性成為鏈接

使 HTML 'value' 屬性成為鏈接

PHP
萬千封印 2023-10-22 21:37:34
我想將 HTML 輸入值的輸出轉換為可點擊的鏈接。目前,它看起來像:<input type="email" class="form-control" name="contactEmail" value="<?php echo $row_rsContactDetails['contactEmail']; ?>">我嘗試使用 PHP 和 JavaScript 來創建鏈接,但這最終只是逐字顯示 HTML 代碼。可以嗎?如果可以,怎么做?
查看完整描述

3 回答

?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

您不需要輸入作為值輸出的鏈接,您需要一個解決方法,這是我的建議:

https://jsfiddle.net/4w58ed3o/1/

HTML:

<div class="box">

  <input type="email" id="myinput" value="[email protected]">

  <a href="#" id="mylink"></a>

</div>

<button id="myswitcher">Edit</button>

JS:


let input = document.querySelector('#myinput');

let link = document.querySelector('#mylink');

let myswitcher = document.querySelector('#myswitcher');


let setLink = () => {

    link.innerHTML = input.value;

  link.setAttribute('href', 'mailto:' + input.value);

}

input.addEventListener('input', () => {

    setLink();

});


setLink();


myswitcher.addEventListener('click', () => {

    document.querySelector('.box').classList.add('editable');

  input.focus();

});


input.addEventListener('blur', () => {

    document.querySelector('.box').classList.remove('editable');

});

CSS


input, a {

  display: inline-block;

  padding: 0;

  padding: 10px;

  margin: 0;

  text-decoration: none;

  font-size: 16px;

  font-family: inherit;

  box-shadow: none;

  border: none;  

  line-height: 1.2;

  background-color: transparent;

}

input:focus, a:focus {

  outline: 1px solid #000;

}

.box {

  position: relative;

  display: inline-block;

}

input {

  position: absolute;

  box-sizing: border-box;

  top: 0;

  left: 0;

  width: 100%;

}

.box input {

  opacity: 0;

  pointer-events: none;

}

.box.editable a {

  opacity: 0;

  pointer-events: none;

}

.box.editable input {

  opacity: 1;

  pointer-events: auto;

}

我為您制作了一個可行的實施示例,替換來自服務器的數據并受到我的解決方案的啟發。


查看完整回答
反對 回復 2023-10-22
?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

您可以使用 javascript/jquery 來實現相同的目的。


<html>

<body>


<input type="email" class="form-control" name="contactEmail" value="LINK HERE">

<span id="output"></span>


<script>

   $(document).ready(function(){

     var str = "LINK TITLE HERE";

     var valueToLink = $(".form-control").val() //fetches the string to be converted to 

    //link

     var result = str.link(valueToLink);

     document.getElementById("output").innerHTML = result;

   })

</script>

</body>

</html>

您還可以將上述邏輯連接到事件調用,例如按鈕單擊。



查看完整回答
反對 回復 2023-10-22
?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

我認為這是不可能的,但你可以嘗試一下。您<?php echo $row_rsContactDetails['contactEmail']; ?>也可以放置“一些文本”。

<a href="<?php echo $row_rsContactDetails['contactEmail']; ?>">SOME TEXT</a>


查看完整回答
反對 回復 2023-10-22
  • 3 回答
  • 0 關注
  • 222 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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