jQuery $ .get有时可以工作,有时候不行吗?

时间:2014-05-19 20:38:13

标签: javascript php jquery get

最终更新:已修复!

我完全不知道这与问题有什么关系,但显然由于我的主文件的编码,它已将<form action='something.php'>更改为<form action='something.php#12'>。 &#34;#12&#34;然后出现在我的URL的末尾,并以某种方式成功地导致网络设置奇怪地行动。从URL过滤掉这个字符后,一切似乎都没问题。

任何想法在字面上怎么会破坏jQuery&#39; $ .get? o.O

无论如何,它现在有效。 非常感谢你的帮助! :)


我知道我不管怎么说,但是无论如何。

我有一个PHP代码,而我遇到问题的是启动脚本(在这种情况下喜欢状态)而不重新加载页面。我用一个简单的onClick()解决了这个问题,点击后执行jQuery $ .get命令。

我的问题是有时脚本会执行,有时候不会!我不明白为什么!我已经尝试了所有可能的调试方法,但没有任何帮助。这真是太奇怪了!

echo "<a onclick=\"$.get('like.php?trackid=$rowtracks[trackid]');    return false\">Give a ♥</a>";

请原谅我可能犯的任何愚蠢错误,我主要需要解决主要问题。

即使我尝试将Javascript代码复制到Chrome控制台,它有时也会工作._。怎么了?

更新:在Chrome调试系统的网络标签中,我可以看到&#34;方法:GET |状态:待定&#34; &#34; 1请求| 0B转移&#34;而不是&#34;方法:GET |状态:200 OK&#34; &#34; 1请求| 540B转移&#34; ...所以有时它得到答复,而有时候它没有。有什么帮助吗?

1 个答案:

答案 0 :(得分:2)

在jQuery中,您不能使用on...属性来处理标记事件 - 而应将事件绑定到选择器。

<a data-src="/like.php?trackid=$rowtracks[trackid]" class="ajax-link">Give a ♥</a>

以及以下js

$('.ajax-link').on('click', function(e) {
    $.get($(this).data('src').split('#')[0]);
    e.preventDefault();
});

为了防止可能发生的某些404,如果您在不同路径中使用此脚本,我将/添加到uri