只是为了好玩,我为我的一个学校课程创建了一个聊天室。我想要的是一个 JavaScript,一旦按下按钮(添加 url),就会弹出一个输入框,用户可以在其中粘贴一个 url,然后将其写入 textarea。
我想要这个功能,以便将“http://”放在添加的 url 前面。
一直在尝试这个脚本(这对我来说看起来是正确的......但它不起作用)
<input type="button" id="s_5" onclick="addUrl()">
<script>
function addUrl()
{
var x;
var nettside=prompt("Type in URL:","www.example.com");
if (nettside!=null)
{
x="http://" + nettside + ";
document.getElementById("area").innerHTML=x;
}
}
</script>
是的,它应该写入的文本区域:
<textarea name="txt" id="area" class="typo_vind" placeholder="......" autofocus title="Type your message here, have a great day!"></textarea>
编辑
HTML:
<input type="button" id="s_5" onclick="javascript:formatText(addUrl())">
JS:
<script>
function addUrl()
{
var x;
var nettside=prompt("Skriv inn lenkeadressen her:","www.testtest.com");
if (nettside!="")
{
x="<a href="+"http://" + nettside + ">" + "BESKRIVELSE AV LENKEN" + "</a>";
document.getElementById("area").value=x;
}
}
</script>
仍然存在两个问题。
- 我不希望该脚本清除 textarea
- 我不希望
<undefined></undefined>
添加到最后这是脚本的结果,就像现在一样:
<a href=http://www.eksempel.com>__BESKRIVELSE_AV_LENKEN__</a><undefined></undefined>
编辑 2
解决了脚本清除 texarea 的问题:
<script>
function addUrl()
{
var x;
var nettside=prompt("Skriv inn lenkeadressen her (uten http://):","www.eksempel.com");
{
x="<a target =_blank href=http://" + nettside + ">" + "__BESKRIVELSE_AV_LENKEN__" + "</a>";
var Field = document.getElementById('area');
var val = Field.value;
var selected_txt = val.substring(Field.selectionStart, Field.selectionEnd);
var before_txt = val.substring(0, Field.selectionStart);
var after_txt = val.substring(Field.selectionEnd, val.length);
Field.value = before_txt + x + after_txt;
}
}
</script>
所以现在所缺少的就是删除<undefined></undefined>
-tags。
HTML:<input type="button" id="s_5" onclick="javascript:addUrl()">
解决了!