2010-03-29 8 views
8

Io uso le seguenti dichiarazioni jQuery e sto ottenendo l'errore,Perché jQuery.parseJSON non è una funzione?

jQuery.parseJSON non è una funzione

La mia funzione è,

function Iteratejsondata() {var HfJsonValue = 
     { "Table": [{ "Emp_Id": "3", 
        "Identity_No": "", 
        "Emp_Name": "Jerome", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Supervisior", 
        "Desig_Description": "Supervisior of the Construction", 
        "SalaryBasis": "Monthly", 
        "FixedSalary": "25000.00" }, 
        { "Emp_Id": "4", 
        "Identity_No": "", 
        "Emp_Name": "Mohan", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Acc ", 
        "Desig_Description": "Accountant", 
        "SalaryBasis": "Monthly", 
        "FixedSalary": "200.00" }, 
        { "Emp_Id": "5", 
        "Identity_No": "", 
        "Emp_Name": "Murugan", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Mason", 
        "Desig_Description": "Mason", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "150.00" }, 
        { "Emp_Id": "6", 
        "Identity_No": "", 
        "Emp_Name": "Ram", 
        "Address": "Madurai", 
        "Date_Of_Birth": "" 
        "Desig_Name": "Mason", 
        "Desig_Description": "Mason", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "120.00" }, 
        { "Emp_Id": "7", 
        "Identity_No": "", 
        "Emp_Name": "Raja", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Mason", 
        "Desig_Description": "Mason", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "135.00" }, 
        { "Emp_Id": "8", 
        "Identity_No": "", 
        "Emp_Name": "Raja kumar", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Mason Helper", 
        "Desig_Description": "Mason Helper", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "105.00" }, 
        { "Emp_Id": "9", 
        "Identity_No": "", 
        "Emp_Name": "Lakshmi", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Mason Helper", 
        "Desig_Description": "Mason Helper", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "100.00" }, 
        { "Emp_Id": "10", 
        "Identity_No": "", 
        "Emp_Name": "Palani", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Carpenter", 
        "Desig_Description": "Carpenter", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "200.00" }, 
        { "Emp_Id": "11", 
        "Identity_No": "", 
        "Emp_Name": "Annamalai", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Carpenter", 
        "Desig_Description": "Carpenter", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "220.00" }, 
        { "Emp_Id": "12", 
        "Identity_No": "", 
        "Emp_Name": "David", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Steel Fixer", 
        "Desig_Description": "Steel Fixer", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "220.00" }, 
        { "Emp_Id": "13", 
        "Identity_No": "", 
        "Emp_Name": "Chandru", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Steel Fixer", 
        "Desig_Description": "Steel Fixer", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "220.00" }, 
        { "Emp_Id": "14", 
        "Identity_No": "", 
        "Emp_Name": "Mani", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Steel Helper", 
        "Desig_Description": "Steel Helper", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "175.00" }, 
        { "Emp_Id": "15", 
        "Identity_No": "", 
        "Emp_Name": "Karthik", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Wood Fixer", 
        "Desig_Description": "Wood Fixer", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "195.00" }, 
        { "Emp_Id": "16", 
        "Identity_No": "", 
        "Emp_Name": "Bala", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Wood Fixer", 
        "Desig_Description": "Wood Fixer", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "185.00" }, 
        { "Emp_Id": "17", 
        "Identity_No": "", 
        "Emp_Name": "Tamil arasi", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Wood Helper", 
        "Desig_Description": "Wood Helper", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "185.00" }, 
        { "Emp_Id": "18", 
        "Identity_No": "", 
        "Emp_Name": "Perumal", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Cook", 
        "Desig_Description": "Cook", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "105.00" }, 
        { "Emp_Id": "19", 
        "Identity_No": "", 
        "Emp_Name": "Andiappan", 
        "Address": "Madurai", 
        "Date_Of_Birth": "", 
        "Desig_Name": "Watchman", 
        "Desig_Description": "Watchman", 
        "SalaryBasis": "Weekly", 
        "FixedSalary": "150.00"}] 
     }; 

    //var jsonObj = eval('(' + HfJsonValue + ')'); 
    var jsonObj = jQuery.parseJSON(HfJsonValue); 

e la mia pagina si presenta come questo

<div id="Pagination" class="page-numbers"></div> 
    <br style="clear:both;" /> 
    <div id="Searchresult"></div> 

    <div id="hiddenresult" style="display:none;"> 

    </div> 
<script type="text/javascript"> 
    var pagination_options = { 
     num_edge_entries: 2, 
     num_display_entries: 8, 
     callback: pageselectCallback, 
     items_per_page: 3 
    } 
    function pageselectCallback(page_index, jq) { 
     var items_per_page = pagination_options.items_per_page; 
     var offset = page_index * items_per_page; 
     var new_content = $('#hiddenresult div.resultsdiv').slice(offset, offset + items_per_page).clone(); 
     $('#Searchresult').empty().append(new_content); 
     return false; 
    } 
    function initPagination() { 
     var num_entries = $('#hiddenresult div.resultsdiv').length; 
     // Create pagination element 
     $("#Pagination").pagination(num_entries, pagination_options); 
    } 
    $(document).ready(function() { 
     Iteratejsondata(); 
     initPagination(); 
    }); 
</script> 

Ho ispezionato tramite Firebug e visto che tutti i file jQuery sono stati scaricati, ma perché sta succedendo questo?

+1

Sembra che 'HfJsonValue' sia già un oggetto. perché trattarlo come JSON e convertirlo in oggetto? – mauris

+0

@the sviluppatore php certamente non è un oggetto credo che ... Devo valutarlo o usare jquery per analizzarlo ... –

risposta

16

Quale versione di jQuery stai usando? parseJSON è stato aggiunto nella versione 1.4.1, quindi se stai usando le versioni precedenti, non è lì.

+0

@arnie ya era la versione jquery ... –

+0

Questo errore si attiva quando c'è un errore nella stringa JSON che stai cercando di analizzare. – Kama

7

Quale versione di jQuery stai usando? parseJSON è disponibile solo dalla versione 1.4.1.

Inoltre, è possibile passare solo una stringa alla funzione: http://api.jquery.com/jQuery.parseJSON/

+0

sto usando la versione 1.10.1. c'è ancora l'errore –

3

Nel tuo esempio, non è necessario analizzare HfJsonValue, è già incorporato direttamente, verrà correttamente gestito dal browser.

10

È anche possibile utilizzare JSON.parse(). È supportato nativamente su FF, Chrome, Safari e IE8 e molto probabilmente sarà più veloce della versione di JQuery.

Se si sta prendendo di mira IE7 e IE6, JQuery sarebbe la soluzione migliore.

0

ho continuato a ottenere lo stesso errore, "jQuery.parseJSON non una funzione", fino a quando ho aggiornato alla 1.4.4

| "text/javascript" src script type = = "http: //ajax.googleapis .com/ajax/librerie/jquery/1.4.4/jquery.min.js "|

0

Ho anche imbattuto in questo errore, ma è stato a causa di una vecchia libreria JavaScript che usavo con jQuery 3.

Come di jQuery 3+ jQuery.parseJson è disapprovato in favore del JSON.parse nativo che ha lo stesso supporto per browser di jQuery 3

Problemi correlati