jQuery使用href属性创建一个

时间:2013-04-19 09:59:19

标签: javascript jquery anchor href

我刚刚遇到了一个非常严重的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]

4 个答案:

答案 0 :(得分:20)

我会使用不同的方法:

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

答案 1 :(得分:4)

这应该有效(测试):

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

答案 2 :(得分:3)

var a = document.createElement('a');
$(a).attr('href','index.html').attr('id','xyz').addClass('example');

答案 3 :(得分:0)

经过一些进一步的试验&amp;错误结果表明这是关于Safari的问题。在Chrome中,我的代码效果很好。

我终于得到了修复。我只是将我从函数中返回的HTML字符串包装到<div>标记中:

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