我通过jeditable更新了字段 它是一个文件名,因此如果它很长,我会显示文件名,如“filename ....”。
我想使用数据$(this).data(“id”)但它显示未定义
如果在提交数据中控制它,则显示正确的值。
这是我的代码。
<span id="2012_03_10 15_05_46.jpg" class="rename" title="Doubleclick to edit...">2012_03_10 15_...</span>
<span id="2012_03_10 15_05_47.jpg" class="rename" title="Doubleclick to edit...">2012_03_10 15_...</span>
<span id="2012_03_10 15_05_48.jpg" class="rename" title="Doubleclick to edit...">2012_03_10 15_...</span>
$(".rename").editable("process.php", {
data : $(this).data("id"),
//placeholder : "txt - "+$(this).attr('id'),
indicator : "<img src='images/indicator.gif'>",
tooltip : "Doubleclick to edit...",
event : "dblclick",
onblur : "submit",
style : "inherit",
submitdata : function() {
console.log($(this).attr("id"));
return {action : 'rename_file'};
}
});
如何作为数据访问正确的值。 并且还为每个
分隔值答案 0 :(得分:0)
$(this).data("id")
仅在您使用任何event
click
时才有效,否则您必须使用selector
,
$(".rename").editable("process.php", {
data : $(".rename").data("id"), // use .rename instead of this
// your remaining code
是的,$(this)
在submitData
如果您只有id
,请尝试使用此data : $(".rename").attr("id")
,但根据您的edited question
,您必须looping
使用unique every rename span
<强> HTML 强>
<span data-id="2012_03_10 15_05_48.jpg" class="rename" title="Doubleclick to edit...">2012_03_10 15_...</span>
<强> SCRIPT 强>
$(".rename").each(function(){
$(this).editable("process.php", {
data : $(this).data("id"),
// your code;
});// end of editable code
});// end of each loop
答案 1 :(得分:0)
这工作正常
<span id="folder.jpg" class="rename" data-attribute="folder.jpg" title="Doubleclick to edit...">folder.jpg</span>
$(".rename").editable("process.php", {
data : $(this).data("attribute"),