0

我正在尝试使用 Javascript 开发一个 url 解码器,但我的代码不起作用,谁能告诉我怎么做,thx

<textarea id="input"></textarea>
<br />
<button id="yes" align="center" onclick="getInput(document.getElementById('input')">Click to transfer</button>
<p>The decoded URL:&lt;/p>
<textarea id="decode"></textarea>
<script>
    function getInput(inputElement) {

        var decoded = "";

        if inputElement == 0 {

            document.write("You didn't input anything");

        } else if {

            var uri = inputElement;
            var uri_decode = decodeURIComponent(uri);
            var uri_encode = encodeURIComponent(uri)

            document.getElementById("decode").innerHTML = uri_decode;
            document.getElementById("encode").innerHTML = uri_encode;

            decoded = uri_decode;

        }
        return decoded;
    }
</script>
4

4 回答 4

1

假设逻辑在您的原始代码中正确完成。

由于它是文本区域,因此您必须使用value

尝试 :

document.getElementById("decode").value = uri_decode;

更多房产在这里

于 2013-03-16T16:32:42.550 回答
1

尽管我对此还很陌生,但我想我发现了一些错误,我不确定它是否能解决你的问题,但你应该试一试。

1. <script>

需要是:

<script type="text/javascript">

否则你的浏览器不知道它需要什么类型的脚本。

2.if inputElement == 0 {

需要是:“ if (inputElement == 0) {

3.} else if {

应该} else {

关闭脚本保持不变: </script>

我希望这有效,如果没有,请告诉我。

于 2014-02-25T11:12:29.663 回答
0

我的建议是使用 jQuery Api。

单击按钮后,您可以使用

$('#transfer').click(function() { }

然后简单地使用从第一个文本框中收集文本

var url = $('#urlToDecode').val();

然后使用将“url”变量写入第二个文本框中

$("#decodedURL").val = url;

希望有帮助!:) 注意:您需要链接到由 Google 托管的 jQuery API。

于 2013-03-16T16:36:01.950 回答
0

在您的else if中,您没有指定 if 语句。猜你的意思是别的

于 2013-03-16T16:31:19.190 回答