Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery $(a,this).attr('href')返回未定义的_Jquery_Mysql_Hyperlink_Href_Undefined - Fatal编程技术网

Jquery $(a,this).attr('href')返回未定义的

Jquery $(a,this).attr('href')返回未定义的,jquery,mysql,hyperlink,href,undefined,Jquery,Mysql,Hyperlink,Href,Undefined,我正在使用ajax从mysql数据库加载一些数据。。。我的问题是,它获取我想要加载的数据的id,我已经将HREF值设置为id。。。例如: `<a href="16" title="View Story: ssasds">ssasds</a>`, 当我检查控制台firebug时,它只是说未定义。请尝试并帮助我,因为我已经尝试了其他获取数据的方法,但是会变得混乱 谢谢。人工制品是链接吗?如果是,为什么要使用$a',this而不仅仅是$this?试试这个: var story

我正在使用ajax从mysql数据库加载一些数据。。。我的问题是,它获取我想要加载的数据的id,我已经将HREF值设置为id。。。例如:

`<a href="16" title="View Story: ssasds">ssasds</a>`,
当我检查控制台firebug时,它只是说未定义。请尝试并帮助我,因为我已经尝试了其他获取数据的方法,但是会变得混乱

谢谢。人工制品是链接吗?如果是,为什么要使用$a',this而不仅仅是$this?

试试这个:

var storyId = $(this).attr('href');
您需要使用$this.attr'href'

@Neil Stewart:请参阅-


您没有将artefact类添加到链接中,您的jQuery代码也缺少右括号:

是的,右括号是错误的,我使用了您给定的HTML代码


在该DIV中有两个锚定,因此需要指定要选择的锚定。我使用了您的类名。

您在div元素中有两个链接查看您提供的代码。因此,如果该链接始终是div中的最后一个链接,则要获取href,应使用:

$('.artefact').click(function() {
  var storyId = $('a', this).last().attr('href');
  console.log(storyId);
});
正如其他人所说,你也失去了亲子关系。基于此:

$('.artefact').click(function () {
    var storyId = $('a', this).filter("[href]").attr('href');
    console.log(storyId);
});
编辑 仔细想想,这看起来更干净:

$('.artefact').click(function () {
    var storyId = $(this).find("a[href]").attr('href');
    console.log(storyId);
});

试试console.log$a,this,也试试$this.findamay可能你只需要使用$this.attr'href'width=130 height=90 alt=ssasds视频预览>@Neil Stewart:你必须链接a,而第一个没有href属性。因此,要获取href,可以使用:$'a',this.last.attr'href'。我认为这是正确的syntax@Enoyhs这就是问题所在。。谢谢:。artefact是一个div,里面有一个图像和一个锚定标记。使用@Raynos对你的问题进行评论$this.find'a部分应该与该组合一起工作[a,a 16]是在控制台中使用a时返回的,那么我如何单独获得17,我可以创建一个值为a,this的变量吗,然后剪断最后三个聊天者的字符串,然后删除]嗯。。。看看这个JSFIDLE:-这是你的情况吗?它工作正常。我尝试了链接,它工作正常。。。我试着将它复制到我的脚本中,但它没有。。。awww:。我是人工制品部门,在另一个名为story_preivew的部门。这些都是在页面加载时使用PHP引入的。。。这和问题有关系吗?我知道如果您使用ajax获取数据,您需要使用。live,但我不认为在这种情况下这会是一个问题,我很迟钝。。。。固定的我没有意识到我在中的链接A实际上在另一个分区中,该分区也在artefact中,但B artefact分区中的第一个链接没有HREF属性。很抱歉浪费时间:@Neil:你不是在创建YouTube播放列表,是吗?不是。我有一个大学课程要做一个网络杂志类型的东西。。。我决定制作一个看起来像报纸的网站,我使用PHP和jquery从数据库中加载故事。。。如果您想查看,请访问paper.nmyster.co.uk。我不熟悉jquery,我指的是AJAX和PHP,但使用jquery会更好
$('.artefact').click(function () {
    var storyId = $(this).find("a[href]").attr('href');
    console.log(storyId);
});