到目前为止我有this jsfiddle
<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>
它适用于文本预输入,但不会更改提交的文本.
我确信这是一个简单的答案,我只是新手,无法解决或找到答案.
解决方法:
你需要使用textarea的.value,而不是.innerHTML.
.innerHTML只查看元素中生成的HTML.如果用户输入新内容,则源不会更改.
但是,价值确实如下:
document.getElementById("demo").value = ...
修正了你的小提琴:
其他几个指针:
>您不需要两个函数来执行该操作,因为您可以看到它可以在一个中完成.
>您可以使用type =’button’而不是提交,因为Javascript不关心表单提交(仅在服务器上,它接收POST和GET数据.Javascript不能)
您可以进一步简化您的功能,而无需在整个地方保存字符串:
function myFunction() {
var str=document.getElementById("demo").value;
var n=str.replace("http://","");
var m=n.replace("www.","");
document.getElementById("demo").value=m;
}
工作良好.你甚至可以这样做
function myFunction() {
document.getElementById("demo").value =
document.getElementById("demo").value.replace("http://","").replace("www.","");
}
但这有点混乱的IMO,所以应该仅用于学习目的:)
标签:javascript,replace,textbox 来源: https://codeday.me/bug/20190620/1246756.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。