我正在尝试编写代码,从任何字符串URL中删除一些特殊字符,然后通过html显示已清理的字符串。
JavaScript有效,但我无法在浏览器中显示结果。
代码的重点是让某人输入输入,然后清理输入,然后将结果插入“result1”和/或“result2”
因此,当页面加载并且用户在“myTextarea”中键入内容并单击按钮时,cleanupurl(x)
应该运行。
请帮忙;(
到目前为止代码
<!DOCTYPE html>
<html>
<head>
<title>Clean Strings</title>
</head>
<body>
<div id="display-area" >
<textarea placeholder="insert URL here :)" id="myTextarea">.
</textarea>
<button class = 'btn btn-default' id="demo" onclick=“cleanupurl(myTextarea.text())> Cleanup URL</button>
</div>
<div id ="result1">
<p></p>
</div>
<div id ="result2">
<p></p>
</div>
</body>
</html>
<script>
var splitstring = [''];
var finaloutput = ''; var i = 0;
function cleanupurl(urlstring) {
//==========================================//
urlstring = urlstring.replace(/%21/gi, '!');
urlstring = urlstring.replace(/%23/gi, '#');
urlstring = urlstring.replace(/%24/gi, '$');
urlstring = urlstring.replace(/%26/gi, '&');
//==========================================//
splitstring = urlstring.split('http://');
document.getElementById("result1").innerHTML = cleanurloutput1();
//return
}
function cleanurloutput1(){
return splitstring[1];
}
function cleanurloutput2(){
return splitstring[2];
}
//document.getElementById("result1").innerHTML = cleanurloutput1();
var x = document.getElementById("myTextarea").value;
cleanupurl(x);
</script>
答案 0 :(得分:2)
您的onclick
正在传递myTextarea.text()
,而元素myTextArea
没有text
方法(请检查您的浏览器控制台是否有错误)。< / p>
使用myTextarea.value
代替
<button class='btn btn-default' id="demo" onclick=“cleanupurl( myTextarea.value ) > Cleanup URL</button>
答案 1 :(得分:0)
所以我在使用调试工具在浏览器中运行代码时遇到的第一个问题是:
“cleanupurl(myTextarea.text())
我完全重写了这一行,看起来像这样:
<button class = 'btn btn-default' id="demo" onclick="cleanupurl();"> Cleanup URL</button>
&#13;
然后我对您的javascript进行了此更改.... Viola 您的代码正常运行
function cleanupurl() {
var urlstring = document.getElementById('myTextarea').value;