2017-10-10 5 views
0

in Chromkonsole, wenn ich auf die Schaltfläche klicken (löschen speichern) erhalte ich diesen Fehler „Uncaught Syntaxerror: Unerwartete Kennung“ es auch obj auf Konsole ausdrucken und die Daten erscheinen ({ CompanyID: 49305, groupId: 49343, Schlagwortsuche: "misr1", Abfrage: "search = Bib & SearchValueTBX = misr1 & SearchTypeDDL ... cet_Author = & Facet_CountryName = & Facet_LibraryName =" gespeichert: true, ...} )Uncaught Syntaxerror: Unerwartete Kennung in Service liferay

function userSave(){ 
var userId=$("#userId").val(); 
var companyId=$("#companyId").val(); 
debugger; 
Liferay.Service(
      '/MyLibrary_ServiceBuilder-portlet.searchhistory/display-saved', 
      { 
      userId: userId, 
      companyId: companyId 
      }, 
      function(obj) { 
      console.log(obj); 
      html=''; 
      var i; 
      for(i =0;i<obj.length;i++){ 

       html+="<li id='"+obj[i].searchHistoryId+"' name='keywordSearch'>"+obj[i].keywordSearch+"</li>"; 
       html+="<li>"+obj[i].searchTime+"</li>"; 
       html+="<input type='hidden' id='saved' name='saved' value='"+obj[i].saved+"'>"; 
       debugger; 
       html+="<input type='button' name='updateSearch' onclick='statusUpdate("+obj[i].toString()+");' value='delete save'>"; 
      } 

      $("#userSave").append(html); 
      } 
     ); 
} 

function statusUpdate(obj){ 
console.log(obj); 
debugger; 
obj={ 
     'userId':userId, 
     'companyId':companyId, 
     'groupId':groupId, 
     'keywordSearch':'"'+keywordSearch+'"', 
     'updatedOn':updatedOn, 
     'saved':saved, 
     'query':'"'+query+'"' 
} 
Liferay.Service(
      '/MyLibrary_ServiceBuilder-portlet.searchhistory/update-to-search-history', 
      { 
      strSearchHistory: obj 
      }, 
      function(obj) { 
      console.log(obj); 
      } 
     ); 
} 

Antwort

1

Wenn Sie fügen Sie den Code onclick='statusUpdate("+obj[i].toString()+");', obj [i] ist ein Objekt und ruft toString() einen String "[object Object]" und kein serialisierten Objekt zurückgibt.

JSON.stringify(testeObj) 

Oder

obj={ 
    'userId':userId, 
    'companyId':companyId, 
    'groupId':groupId, 
    'keywordSearch':'"'+keywordSearch+'"', 
    'updatedOn':updatedOn, 
    'saved':saved, 
    'query':'"'+query+'"' 

}

Die Schnipsel 'userId':userId, die userId variable wurde nicht in Zusammenhang definiert.

Ich hoffe, ich habe geholfen.

Verwandte Themen