Javascript 为什么赢了';我的链接是否触发jQuery.click事件?

Javascript 为什么赢了';我的链接是否触发jQuery.click事件?,javascript,jquery,ajax,Javascript,Jquery,Ajax,所以,我今天涉猎了一些jQuery,遇到了一个问题。我有一个页面,其中包含以下格式的多个链接: <a class="a_link" id="a_id<#>" href="#">Click me</a> 其中是在运行页面的PHP中的for循环中生成的数字。在页面顶部,我有一个链接到GoogleCDNforjQuery1.7.2的脚本标签,还有一个id为“form_map”的div。显示所有链接后,我有以下脚本: <script type="text/

所以,我今天涉猎了一些jQuery,遇到了一个问题。我有一个页面,其中包含以下格式的多个链接:

<a class="a_link" id="a_id<#>" href="#">Click me</a>

其中
是在运行页面的PHP中的for循环中生成的数字。在页面顶部,我有一个链接到GoogleCDNforjQuery1.7.2的脚本标签,还有一个id为“form_map”的div。显示所有链接后,我有以下脚本:

<script type="text/css">
    $(document).ready(function(){
        $('.a_link').click(function(){
            var c_id = $(this).attr('id');
            var task = 'read';
            var ajax_url = 'engine.php';
            alert('link pressed for id: '+c_id);
            $.get({
                url: ajax_url, 
                data: { 'task':task, 'c_id':c_id }, 
                success: function(res){ $('#form_map').val(res); } 
            });
        });
    });
</script>

$(文档).ready(函数(){
$('.a_链接')。单击(函数(){
var c_id=$(this.attr('id');
var任务='read';
var ajax_url='engine.php';
警报('为id按下链接:'+c_id);
美元({
url:ajax\uURL,
数据:{'task':task'c_id':c_id},
成功:函数(res){$('#form_map').val(res)}
});
});
});
不管所有那些不可靠的Ajax调用(它们似乎也不能正常工作),当我单击一个链接时,什么都不会发生。它甚至没有运行脚本。我通过设置断点并添加警报来测试这一点。似乎没有什么能触发这一切


关于我做错了什么有什么建议吗?

您需要在传递到的函数末尾返回false。单击()


返回false会阻止链接继续正常工作。

您需要在传递到的函数末尾返回false。单击()

返回false将阻止链接继续正常工作。

使用:

<script type="text/javascript">
而不是

$('#form_map').val(res);
使用:

而不是

$('#form_map').val(res);

您可能需要修复开始标记

<script type="text/css">


您可能需要修复开头标记

<script type="text/css">



您的脚本类型被列为“text/css”…它应该是“text/javascript”。您的脚本类型被列为“text/css”…它应该是“text/javascript”。甚至不是那样。。。如果您正在使用HTML5 doctype(
),则包含Javascript的
块上的
type
属性是完全可选的,如果这是一个新项目,则最好是这样。将type更改为text/Javascript至少可以使脚本正常工作。我甚至有doctype,所以它应该在firefox和chrome中呈现为HTML5。我不知道为什么我的get函数没有发布来自ajax脚本的消息,但我最终会解决这一部分。ajax调用可能不起作用,因为
$。get()
url
数据
等作为普通参数,而不是对象。尝试
$.get(ajax_url,{'task':task,'c_id':c_id},…)
,或者使用接受对象的
$.ajax()
。或者甚至不这样做。。。如果您正在使用HTML5 doctype(
),则包含Javascript的
块上的
type
属性是完全可选的,如果这是一个新项目,则最好是这样。将type更改为text/Javascript至少可以使脚本正常工作。我甚至有doctype,所以它应该在firefox和chrome中呈现为HTML5。我不知道为什么我的get函数没有发布来自ajax脚本的消息,但我最终会解决这一部分。ajax调用可能不起作用,因为
$。get()
url
数据
等作为普通参数,而不是对象。尝试
$.get(ajax_url,{'task':task,'c_id':c_id},…)
,或者使用接受对象的
$.ajax()
<script type="text/css">
<script type="text/javascript">