2013-04-12 143 views
0

問題jQUERY意外的字符串?

我收到意想不到的字符串錯誤,但我看不出有什麼錯..

這是我的代碼:?

$(document).ready(function() { 

    var search = $("#search"); 

     $("#bla").click(function() { 
      if (search.val() != '') { 
       load(); 
       $.post("ajax_search.php", { search : search.val()}, function(data) { 
        stop_load(); 
        $(".result").html(data); 
       }); 
      } 
      else 
      { 
       $(".result").html(''); 
      } 
     }); 
     $("#hover").hover(function() { 
      load(); 
      $.post"ajax_search.php?type=sidebar", { sidebar : seach.val() }, function(get_data) { 
       stop_load(); 
       $("sidebar").html(get_data); 
      } 
     });  

function load() { 
    $('.load').html('<img src="http://i.imgur.com/ZoI4x5I.gif" />'); 
} 
function stop_load(){ 
    $('.load').html(''); 
} 
}); 

問題

基本上問題得到解決後,我刪除了在

開始的功能
$("#hover").hover(function() { 

這是我的方式得到的錯誤:

未捕獲的SyntaxError:意外的字符串:29

這是第29行:

 }); 

權利之前

$("#hover").hover(function() { 

這是什麼造成的?我做錯了什麼? 謝謝!

+0

檢查你的''.post「ajax_search.php?type = sidebar」行的語法,{' – j08691

回答

4

您的$.post的語法不正確。你錯過了開頭和結尾的括號。

$("#hover").hover(function() { 
    load(); 
//  v-- opening parathesis here 
    $.post("ajax_search.php?type=sidebar", { sidebar : seach.val() }, function(get_data) { 
     stop_load(); 
     $("sidebar").html(get_data); 
// v-- closing here 
    }); 
}); 
+0

哦,我錯過了..我不相信我沒有看到..非常感謝。 –

2

你缺少()

$.post("ajax_search.php?type=sidebar", { sidebar : seach.val() }, function(get_data) { 
       stop_load(); 
       $("sidebar").html(get_data); 
}); 
1

post()方法缺少括號。

此:

$.post "ajax_search.php?type=sidebar", { 
    sidebar: seach.val() 
}, 

如果你不使用IDE,顯示你JS錯誤應該是

$.post("ajax_search.php?type=sidebar", { 
    sidebar: seach.val() 
}), 

,我建議你檢查在控制檯上的任何網絡瀏覽器你使用,甚至彈出你的JS到jsfiddle並點擊JSHint。

2

只爲你的未來職位的建議:

之前發表任何javascript/jQuery代碼。請做如下因素:

  1. 親臨現場jsfiddle.net

  2. 然後,粘貼在的javascript面板代碼。

  3. 如果是jQuery代碼,請從右側的框架&擴展框中選擇版本。

  4. 然後,點擊頂部的按鈕,名稱爲JSHint

  5. 如果有任何錯誤,您將會在右側將它們識別爲紅點。

  6. 修復它們並再次點擊JSHint

  7. 最後,如果你得到一個消息,如下圖所示:

JSLint Valid! Good work! Your JavaScript code is perfectly valid.

然後再次運行在本地機器上的代碼,猶若您收到任何錯誤,然後發佈,以便您的問題。沒有惡意!