0

我正在尝试使用以下 jQuery 将 HTML 链接添加到输入框:

var E = "<a class='tagged_person' contenteditable='false' href='http://www.google.com'>Click This</a>";
$("input[name='newComment']").val(E);

哪个有效,但它实际上显示了<a href...,这是我想要的后端,但在前端,我希望用户将其视为呈现为 HTML<a>链接。就像在 Facebook/Twitter 上一样,您可以标记用户,然后有一个链接。

4

2 回答 2

3

我认为您正在寻找 JQuery 方法.append。这使您可以传递一个 HTML 字符串并将其解析到 DOM 中。在这里查看

例如:

$('#myDiv').append('<a href="www.google.com">Search for it!</a>');

还有.appendTo(),如果它更适合你的审美。

编辑:如果你试图将 html 作为文本输入的值,你不能这样做。 <input type="text">携带文字,仅此而已。您必须制作自己的输入表单,或使用 JQuery 插件。但是,为什么您仍然希望在表单输入中包含链接?当然,您可以在通过不同的事件处理程序单击表单时重定向用户,但输入是用于输入。如果它重定向,那么您一开始并不真正想要输入。

于 2012-08-03T16:36:16.267 回答
0

You can use the following code, which when select it will open the link in a new window.

<form action="../">
<select name="myDestination">
    <option value="http://www.website1.com/">Website 1</option>
    <option value="http://www.google.com/">GOOGLE</option>
</select>
<input type="button"
    value="Open in New Window!"
    onclick="ob=this.form.myDestination;window.open(ob.options[ob.selectedIndex].value)">
</form>

或者无需按下按钮:

<form action="../">
  <select onchange="window.open(this.options[this.selectedIndex].value,'_top')">
    <option value="">Choose a destination...</option>
    <option value="http://www.website1.com/">Website 1</option>
    <option value="http://www.google.com/">GOOGLE</option>
  </select>
</form>

还创建了一个 jsfiddle 来演示:jsFiddle

于 2012-08-03T16:44:38.103 回答