<p>Click the button to remove http:// and www. from input box belove below:</p>
<textarea id="demo" name="comments" cols="25" rows="5">
http://www.google.com
</textarea><br>
<input type="submit" value="Submit" button onclick="myFunction(),myFunction2()" />
</form>
<script>
function myFunction()
{
var str=document.getElementById("demo").innerHTML;
var n=str.replace("http://","");
document.getElementById("demo").innerHTML=n;
}
function myFunction2()
{
var str=document.getElementById("demo").innerHTML;
var m=str.replace("www.","");
document.getElementById("demo").innerHTML=m;
}
</script>
它适用于文本pre
输入,但不会更改提交的文本。
我确信这是一个简单的答案,我只是对此不熟悉,无法解决或找到答案。
答案 0 :(得分:5)
您需要使用.value
的{{1}},而不是textarea
。
.innerHTML
仅查看元素中生成的HTML。如果用户输入新内容,则源不会更改。
但是,价值确实如此:
.innerHTML
修正了你的小提琴:
其他一些指示:
document.getElementById("demo").value = ...
而不是提交,因为Javascript不关心表单提交(仅在服务器上有问题,它接收POST和GET数据.Javascript不能)您可以进一步简化您的功能,而无需在整个地方保存字符串:
type='button'
工作正常。你甚至可以做
function myFunction() {
var str=document.getElementById("demo").value;
var n=str.replace("http://","");
var m=n.replace("www.","");
document.getElementById("demo").value=m;
}
但这有点混乱的IMO,所以应该仅用于学习目的:)