1

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

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

<#>在运行页面的 PHP 的 for 循环中生成的数字在哪里。在页面的顶部,我有一个脚本标签链接到 jQuery 1.7.2 的 Google CDN 最小化,以及一个 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>

忽略所有不稳定的 Ajax 调用(它们似乎也无法正常工作),当我单击一个链接时,什么也没有发生。它甚至不运行脚本。我通过设置断点并添加警报对此进行了测试。似乎没有什么能触发这一点。

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

4

3 回答 3

9

采用:

<script type="text/javascript">

代替:

<script type="text/css">

也使用:

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

代替

$('#form_map').val(res);
于 2012-05-25T19:56:58.553 回答
4

您可能需要修复开始标签

<script type="text/css">

<script type="text/javascript">
于 2012-05-25T19:58:29.973 回答
3

您需要在传递给 .click() 的函数末尾返回 false。

$('.a_link').click(function() {
  // Your AJAX stuff here.
  return false;
});

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

于 2012-05-25T19:56:03.763 回答