2013-05-08 78 views
6

我所擁有的是當單擊編輯按鈕時,兩個輸入字段中的值創建一個新行,舊行被刪除。下面是我使用的代碼,但我想要的是原始行被更新並且不被刪除。 Live Example如何使用下面的代碼工作。更新Parse.com中的一行

editBtn.onclick = function() { 
    alert("Edit Btn"); 
    alert(name.value + " " + Lname.value); 


    contact.save(null, { 
    success: function (contact) { 


     contact.set("FirstName", name.value); 
     contact.set("LastName", Lname.value); 
     contact.save(); 

      object.destroy({ 
       success: function (myObject) { 

       alert("destroy"); 
       location.reload(); 
       }, 
       error: function (myObject, error) { 

       alert("Error: " + error.code + " " + error.message); 
       } 
       });          
      } 
      }); 
     } 

只是爲了澄清我想更新的行,同時刪除舊的不能創建一個新的。

編輯:Link以上問題在解析論壇問。

編輯:在鏈接中添加更多信息作爲對評論的回覆。

編輯:我添加了this code它實際上編輯的第一個名字(「NewFname」),但它不會更新姓氏(「NewLname」)。

editBtn.onclick = function() { 

        var query = new Parse.Query(Contact); 
        query.equalTo("LastName", NewLname.value); 
        query.first({ 
         success: function (Contact) { 
          Contact.save(null, { 
           success: function (contact) { 

            contact.set('FirstName', NewFname.value); 
            contact.set('LastName', NewLname.value); 

            contact.save(); 
            location.reload(); 
           } 
          }); 
         } 
        }); 
       } 

在那裏我有query.equalTo( 「姓」,NewLname.value),我試圖把OBJECTID即(query.equalTo( 「對象ID」);但是這並沒有爲我工作

回答

8

我管理的任何想法?

托馬斯得到它與此代碼更新。

editBtn.onclick = function() { 
    var query = new Parse.Query(Contact); 
    query.equalTo("objectId", object.id); 
    query.first({ 
     success: function (Contact) { 
      Contact.save(null, { 
       success: function (contact) { 
        contact.set("FirstName", NewFname.value); 
        contact.set("LastName", NewLname.value); 
        contact.save(); 
        location.reload(); 
       } 
      }); 
     } 
    }); 
}