【问题标题】:How can I decode a URL with jQuery?如何使用 jQuery 解码 URL?
【发布时间】:2010-09-27 12:27:46
【问题描述】:

如何使用 jQuery 解码 URL?我的网址是

http%3A%2F%2Fdtzhqpwfdzscm.cloudfront.net%2F4ca06373624db​​.jpg

【问题讨论】:

  • 没有办法用 jQuery 做到这一点,因为所有浏览器都为 Javascript 实现了 decodeURIComponent 函数,正如下面达林的回答所解释的 - 考虑用“javascript”替换“jquery”标签?

标签: jquery


【解决方案1】:

试试decodeURIComponent函数:

var decodedUri = decodeURIComponent('http%3A%2F%2Fdtzhqpwfdzscm.cloudfront.net%2F4ca06373624db.jpg');
alert(decodedUri);

【讨论】:

  • 但是那不使用jQuery(请不要链接到W3Schools,他们擅长SEO,不擅长教授正确的信息)!
  • @David,那么使用decodeURIComponent 函数不是正确的方法吗?
  • 好吧,当原生 javascript 函数可以做到这一点时,我看不出使用 jQuery 的意义。 W3Schools 有什么问题?不是一个您要询问有关编程的复杂特定问题的地方,但至少可以作为一般问题的参考或介绍。我认为这没什么不好。
  • @nahum W3C(万维网联盟)实际上是获取正确信息的好地方。与 W3C 没有任何关系的 w3schools 不是。我假设您知道它们之间的区别,并且这只是一个错字。但是,您刚刚展示了他们选择该名称的原因以及混淆它是多么容易。如果您想继续使用它们,即使您知道他们拥有的信息具有误导性或错误性,也不要使用易于访问且信息更好的东西,没有人会阻止您。但是,当您公开链接到他们时,您会收到投诉。
  • @AdriánSalgado,当这个函数已经存在于普通的 javascript 中时,为什么还要在 jQuery 中寻找一个函数?我的意思是这就像重新发明轮子一样,不是吗?检查一下:i.stack.imgur.com/ssRUr.gif
【解决方案2】:

使用decodeURIComponent(),例如:

decodeURIComponent("http%3A%2F%2Fdtzhqpwfdzscm.cloudfront.net%2F4ca06373624db.jpg")

它不是特定于 jQuery 的,这是一个基本的 JavaScript 函数。

【讨论】:

    【解决方案3】:

    您可以简单地分别调用标准的javascript函数进行编码和解码。

    encodeURIComponent
    decodeURIComponent
    

    享受吧!

    【讨论】:

      【解决方案4】:

      如果您的 URL 还应包含编码为“+”的空格,则以下调用将有所帮助(取自 https://stackoverflow.com/a/4458580/430742):

      decodeURIComponent((str+'').replace(/\+/g, '%20'))
      

      【讨论】:

        【解决方案5】:
        decodeURIComponent('http%3A%2F%2Fdtzhqpwfdzscm.cloudfront.net%2F4ca06373624db.jpg')
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-09-07
          • 2011-11-09
          • 1970-01-01
          • 2014-05-02
          • 2010-11-27
          • 1970-01-01
          • 1970-01-01
          • 2012-05-02
          相关资源
          最近更新 更多