有没有办法允许输入字段中的链接,以便该字段中的任何文字都可点击且可操作?
答案 0 :(得分:2)
遗憾的是,这不适用于HTML 4或更低版本。即使HTML5有几个新的输入类型,包括URL,它只进行验证,并具有一些其他有用的功能,但不会给你想要你想要的。
您可能会寻找一些可以帮助您实现此目的的jQuery插件,大多数使用Rich Text或其他在线/基于Web的HTML WYSIWYG编辑器后面的相同主体。我自己找不到它们有困难。
这三种情况(我现在能想到的)几乎就是HTML4或更低版本的本地特征,因为实际的HTML4 INPUT文本框中的文本是纯文本。它不是HTML,因此不可点击。以下是一些变体:
INPUT标记的VALUE属性,也称为相应的DOM对象"值"属性(这基本上就是你一直在做的,也是你所希望的最多,如果你决定你必须在文本框中有实际的文本(因为文本框内的文本是VALUE)属性,正如我在这个例子中使用" http://yahoo.com":
<input id="myTxtbox" type="text" value="http://yahoo.com">
INPUT的值=&#34; http://yahoo.com&#34;,您可以通过以下方式检索:
:
document.getElementById("myTxtbox").value
:
$("myTxtBox").val()
当您的链接/网址是<INPUT>
和</INPUT>
之间的文本时,即文本框的text / innerText。这对您的问题/场景没用,因为它不可点击,更重要的是不在文本框中。但是,有人可能希望使用此功能来检索您可能用作标签的任何文字(如果您未使用<label>
标签本身):
<input id="myTxtbox" type="text"> http://yahoo.com </input>
textbox的text / innerText不是这里的属性,只是一个DOM对象属性,但仍可以检索:
纯javascript:
document.getElementById("myTxtbox").innerText
jQuery:
$("myTxtBox").text()
- 您可以使用它来捕获您可能用作标签的任何文字(如果您不使用该标签)。
结果是:http://yahoo.com
当您的链接/网址是主持人(<A>
)的形式时,您的网址(以及可见的链接文字)位于<INPUT>
和</INPUT>
之间的HREF ,即文本框的innerHTML。这更接近您想要的,因为链接将显示为,并作为实际链接。但是,它不会在文本框内。它将与示例#2一样。同样,如示例#1中所述,您不能拥有实际工作的HTML,因此无法使用正常工作的链接&#39;在文本框内:
<input id="myTxtbox" type="text"> <a href="http://yahoo.com"> http://yahoo.com </a> </input>
再次,类似于示例#2,文本框的innerHTML不是此处的属性,只是DOM对象属性,但仍可以检索:
纯javascript:
document.getElementById("myTxtbox").innerHTML
jQuery:
$("myTxtBox").html()
结果是:<a href="http://yahoo.com">http://yahoo.com</a>