【问题标题】:jQuery create a with href attributejQuery 创建一个带 href 属性的
【发布时间】:2013-04-12 16:38:50
【问题描述】:

我刚刚遇到了一个非常严重的 jQuery 问题。我想使用 jQ 创建一个元素。就像我尝试的常规方式一样:jQuery('<a href="http://www.google.com"></a>');

但这并工作。所以我尝试了几种不同的元素类型和属性。事实证明,我无法使用包含 href="" 的 HTML 创建元素。

  • jQuery('<a id="id5" name="link"></a>'); 可以工作
  • jQuery('<a id="id5" name="link" href=""></a>');工作。

是否有任何已知问题或解决此问题的方法?感谢您的建议……

编辑:

澄清一下:我不想使用已知属性创建元素。我有一个返回准备好的 HTML 代码的函数。我想使用这段代码来提取图像标签,然后获取它的属性。我不知道返回的 HTML 是否会是相同的结构。我只知道它包含一个图像标签。这是我之前使用的代码:

jQuery(html).find('img:first').attr('class').match(/\image-(\d+)\b/)[1]

【问题讨论】:

  • 试试这个 jQuery('body').append('Link');

标签: javascript jquery anchor href


【解决方案1】:

经过进一步的试验和错误,结果证明这是关于 Safari 的问题。在 Chrome 中,我的代码运行良好。

我终于解决了。我只是将从函数返回的 HTML 字符串包装到 <div> 标签中:

html = "<div>" + html + "</div>";

【讨论】:

    【解决方案2】:

    这应该可以工作(经过测试):

    var thelink = $('<a>',{
        text: 'linktext',
        title: 'some title',
        href: 'somelink.html'
    }).appendTo('body');
    

    【讨论】:

      【解决方案3】:
      var a = document.createElement('a');
      $(a).attr('href','index.html').attr('id','xyz').addClass('example');
      

      【讨论】:

        【解决方案4】:

        我会使用不同的方法:

        var newLink = $("<a />", {
            id : "id5",
            name : "link",
            href : "http://www.google.com/",
            text : "some text"
        });
        

        【讨论】:

        最近更新 更多