jQuery不起作用,除非我复制并粘贴到谷歌Chrome控制台,它运作良好

时间:2014-04-04 22:26:33

标签: javascript jquery html css

这是我的HTML:

<textarea cols="5" disabled id="textareRSAKeypair">
  @Model["keypair"]
</textarea>

<a href="#" class="btn btn-primary" id="downloadKeypair">DownLoad Key</a>

这是我的jQuery:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
  $("a#downloadKeypair").click(function () {
    var now = new Date().toString();
    var filename = 'RSAKeyPair_' + now + ".txt";
    $("a#downloadKeypair").attr('Download', filename);

    this.href = "data:text/plain;charset=UTF-8," + encodeURIComponent($('#textareRSAKeypair').text());
  });
</script>

我的jQuery代码在页面上不起作用,但是当我将其复制并粘贴到控制台(谷歌浏览器)时,它运行良好。我不知道为什么。我尝试添加document.load方法,但它仍无效。

2 个答案:

答案 0 :(得分:2)

尝试准备好的事件:

$( document ).ready(function() {
    $("a#downloadKeypair").click(function () {
        var now = new Date().toString();
        var filename = 'RSAKeyPair_' + now + ".txt";
        $("a#downloadKeypair").attr('Download', filename);
        this.href = "data:text/plain;charset=UTF-8," + encodeURIComponent($('#textareRSAKeypair').text());
    });
});

答案 1 :(得分:0)

您应该将所有代码放在$(document).ready函数中。 这可能是你的问题。