2016-07-20 4 views
0

Error: Parse error on line 1: function search(sour^Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'なぜエラーが発生していますか?

コード:あなたはJSON文字列として引用されたコードを解析しようとしているかのように

function search(source) {                 
$.ajax({ 
    url: "index.ajax.php", 
    type: "POST", 
    cache: false, 
    dataType: "json", 
    data: { action:"search", source:source, form:$("form#main").serialize() }, 
    success: function(data) { 

     //table 
     $('#table_data').html(data.table); 
     $("input[name='count']").val(data.count); 
     $("#time").html(data.time); 

     //pagination 
     from = Number($("input[name='start']").val()); 
     to = (Number(data.count) > (Number($("input[name='limit']").val())+from)) ? Number($("input[name='limit']").val())+from : data.count; 
     if(data.count == 0) { 
      $('#page_info').html('<p>No results found.</p>'); 
      $('#next').hide(); 
     } else { 
      $('#page_info').html('<p>Showing '+(from+1)+' to '+to+' of '+data.count+' records in total.</p>'); 
      $('#next').show(); 
     } 

    }, 
    error: function(data) { 
     $('#table_data').html('<tr><td colspan="20">Results error. Please contact admin.</td><tr>'); 
     $("#page_info").html("<p>Load error.</p>"); 
    } 
}); 
} 
+0

このエラーが発生する状況を明確にすることはできますか?引用したコードをJSON文字列として解析しようとしていますか? – Simba

+0

ようこそスタックオーバーフロー!私はあなたの問題を推測できる限りあなたの質問を編集しました。ただし、コードと説明の説明を追加して、より多くの人々がその知識を持つ人に見られるようにします。特定の問題を特定するために必要な場合は、特定のエラーメッセージを編集してください。がんばろう! – manetsus

+0

いくつかの奇妙な理由でajax呼び出しが成功することはできませんでしたが、私は別のページに私のPHP関数の行に問題があったという問題を発見しました。 – chris

答えて

0

質問は明らかではないが、それはそう。

これは無効です。質問タイトルで引用したエラーが発生します。

JSON文字列にはコードを含めることはできません。それらにはデータのみを含める必要があります。コードを含むとすぐに、JSONなどではなくJavaScriptです。

これ以上の文脈がなければ、これを修正する方法について直接アドバイスはできませんが、達成しようとしていることへのアプローチ全体を変更する必要があると思われます。

0
function accounts_table($load, $aid=false, $level) { 


    $tmp = explode(":", $level); 
    $level = $level ? end($tmp) : false;    


    $sorting_filters = get_call_sorting_filters(); 

    $table = ""; 
+0

[ように]ようこそ!コードのみの回答はあまり有用でないため、推奨されません。 *どうやって*や*なぜ?*あなたのコードも動作します! – jpaugh

+0

問題は、$ tmpが= explodeに設定されていないことです。代わりに、$ level = $ level? end(explode( ":"、$ level)):false;しかし、あなたはこれを行うことはできませんので、$ tmp varを作成し、それを爆発的に設定します。 – chris

関連する問題