Javascript文本链接到文本框

时间:2015-01-16 20:58:14

标签: javascript html function hyperlink

我有一个超链接和一个图像,我想在点击它时在文本框中添加链接的文本。

我现在有这个:但我无法弄清楚如何在文本框中输入名称。

<script language="javascript">
<!--
function insertText()
{   
    var url;
    document.meldformulier.melding.value = url;
}
//-->
</script>

<a id="melding" onClick="insertText()"; href="javascript:void;">Zwaar onweer</a>

<input id="melding" name="melding" type="text" size="35" readonly="readonly" />

结果未定义。举个例子。链接文本是“zwaar onweer”。单击此文本的超链接时,TEXT“zwaar onweer”应出现在文本框中。

有人可以帮助我吗?

谢谢!

5 个答案:

答案 0 :(得分:1)

请在代码中尝试以下更改。

Javascript

 function insertText(obj) 
{
    document.getElementById('txtmelding').value = obj.innerText;
 }

HTML代码

 <a id="melding" onclick="insertText(this)" href="javascript:void;">Zwaar onweer</a>
<input id="txtmelding" name="txtmelding" type="text" size="35" readonly="readonly" />

答案 1 :(得分:1)

我抓了几分钟想知道为什么这里的简单答案对我不起作用。事实证明,因为您在链接中重复了ID并输入了它是我的错误的来源。

的问题:

  1. 您复制了ID。这是一个禁忌。
  2. 您的url变量无意义。摆脱它。
  3. 使用this

    传递对此功能的链接引用
    <a onClick="insertText(this)" href="javascript:void(0)">Zwaar onweer</a>
    

    并将您的功能更改为:

    function insertText(txt) {
        document.getElementById('melding').value = txt.innerHTML;
    }
    

    在函数中,使用txt参数引用要传入的锚点,使用innerHTML属性获取文本并将其放入输入中。

    <强> jsFiddle example

答案 2 :(得分:0)

如何只为输入框分配值。您可以使其与链接的ID匹配,并使用jquery从中获取文本。

function insertText()
{   
var url = $('#melding').text();
    $('input[name="melding"]').val(url);
}

应该有效,这是jfiddle

答案 3 :(得分:0)

首先是document.getElementById其次必须有

  

没有重复的ID

并且更改

function insertText(txt) {
    document.getElementById('melding').value = txt.innerHTML;
}
<a onClick="insertText(this)" href="javascript:void(0)">Zwaar onweer</a>

<input id="melding" name="melding" type="text" size="35" readonly="readonly" />

答案 4 :(得分:-2)

您需要先将变量值存储在变量中。此外,您需要为您的元素添加不同的ID。假设您的超链接ID是&#34; a&#34;你的文本框ID是&#34; tb&#34;。那你就有了

function insertText()
{   
  var url= document.getElementById("a").value;
  var textboxValue= document.getElementById("tb");
  textboxValue.value= url;
}