2012-02-19 34 views
0

頁眉:未捕獲的ReferenceError:JQuery的

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 
<script src="http://mysite.com/public/delete.js" type="text/javascript"></script> 

查看:

<ol> 
<?php foreach($sqlplaces->result() as $place): ?> 
<li id="place-<? echo $place->id; ?>"> 
    <h3><?php echo anchor('/home/one/place/'.$place->id.'/'.$place->userid.'/'.$place->name, $place->name); ?> 
    <span style="float:right;"><a class="delete" id="<? echo $place->id; ?>" href="#"><img src="<? echo base_url(); ?>images/database_close_32.png" alt="Delete" /></a></span> 
    </h3> 
</li> 
<?php endforeach; ?> 
</ol> 

delete.js:

$(document).ready(function() { 

    $("a.delete").live('click', function() { 
      var deleteId = $(this).attr('id'); 
      $("li#place-" + deleteID).addClass("hide"); 

      $.post(base_url + "index.php/home/delete", { delid : deleteId }, function(data) 
      { 
        alert(data); 
      }, "json"); 

    return false; 
      }); 


}); 

我試圖隱藏<li id="place-<? echo $place->id; ?>">元素,但我想不出爲什麼Uncaught ReferenceError:deleteID沒有定義出現。如果我刪除$("li#place-" + deleteID).addClass("hide");,則deleteID將傳遞給$post,並將該條目從數據庫中刪除。

回答

1

這是因爲拼錯deleteID,JavaScript變量區分大小寫。你用小寫字母d來聲明deleteId

這應做到:

$("li#place-" + deleteId).addClass("hide"); 
+0

:))哈哈。謝謝你,我覺得自己像個屁股。我無法相信我沒有注意到這一點。 – Ciprian 2012-02-19 11:10:18

+0

@ciprian不用擔心,當你擁有一雙新的眼睛時,發現這些錯誤通常會更容易 - 您可以輕鬆地在自己的代碼中獲得隧道視覺。 – 2012-02-19 11:13:15

相關問題