簡體   English   中英

發送GET數據的就地編輯問題

[英]edit-in-place problem with sending GET data

$('.textedit').editable('/challenge/skeleton/textedit/textedit/process', {
    loadurl: '/challenge/skeleton/textedit/textedit/loadraw',
    loaddata: {id: $(this).attr('id'), client: $(this).data('client')},
    submitdata: {id: $(this).attr('id'), client: $(this).data('client')},
    ....
});

$('#textedit_footer').data('client', 5);
$('#textedit_home1').data('client', null);
$('#textedit_test').data('client', 3);
$('#textedit_userCreate').data('client', null);

我的問題在於正在發送GET數據。 “ id”數據被適當地發送,但是“ client”數據沒有被發送。 我認為我以錯誤的方式使用了data(),但不能全力以赴。 有什么建議么? 或關於如何以更好的方式做到這一點的任何建議? 以下是div之一的示例:

<div class="textedit" id="textedit_home1">
<p>test</p>
</div>

所有.textedit元素都是就地編輯功能。 提交數據時(在commitdata和loaddata中指定),應將兩個數據包發送到服務器,以便它知道如何處理它:第一個是就地編輯的ID,該ID被存儲為ID元素(此部分有效)。 我將第二條數據稱為“客戶端”。 我可以想到的唯一途徑就是通過data()來知道哪些元素具有哪個客戶端。 但是由於某些原因,我的實現無法正常工作。 “客戶端”數據很簡單,沒有發送,這是錯誤的。

修改后的答案...

當您創建閉包時,如果您稍后設置它,則該值為null,它不會影響Submitdata xhr調用,因為該數據已被“閉包”以獲取更好的單詞。 發送時不會評估數據(“客戶端”)。

更新資料

查看插件,您可以像這樣進行操作

$(".editable").editable("http://www.example.com/save.php";, {
   submitdata : getData
});

function getData(){
       return {id: $(this).attr('id'), client: $(this).data('client')}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM