2011-09-09 40 views
1

我正在使用jeditable编辑表单并将其锁定在自定义表单提交给服务器。jEditable定制表单提交

有我需要编辑的产品说明框。当一些点击编辑它弹出一个窗口与产品描述在一个额外的下拉框(请求原因是用户更改)可编辑模式。不过,我只需要描述就可以在网页上显示,但不是理由。

我该怎么做?

实施例代码

$.editable.addInputType('autogrow', { 
element : function(settings, original) { 
var hourselect = $('<select id="reason" name="reason">'); 
var textarea = $('<textarea id="text" />'); 
$(hourselect).append(
$('<option />').text('Select a reason').val(''), 
    $('<option />').text('Adding new Description').val('1'), 
    $('<option />').text('Editing Grammar').val('2') 
); 
$(this).append(hourselect); 

if (settings.rows) { 
    textarea.attr('rows', settings.rows); 
    } else { 
    textarea.height(settings.height); 
    } 
    if (settings.cols) { 
    textarea.attr('cols', settings.cols); 
    } else { 
    textarea.width(settings.width); 
    } 
    $(this).append(textarea); 
    /* Last create an hidden input. This is returned to plugin. It will */ 
    /* later hold the actual value which will be submitted to server. */ 
    var hidden = $('<input type="hidden" />'); 
    $(this).append(hidden); 

    return(hidden); 
}, 
plugin : function(settings, original) { 
    $('textarea', this).autogrow(settings.autogrow); 
}, 
submit: function (settings, original) { 
var value = $('#text').val(); 
    $('input', this).val(value); 
} 
}); 

我只能发送一个值到服务器即文本或。我也想发送理由给服务器。

有没有人遇到过这个问题或用例并指导我。

病毒

回答

1

我从tuupola [jeditable]笔者

回答说:“目前Jeditable只发送一个值到服务器。但是你可以写你的所有输入,JSON编码数组到隐藏的输入值。然后在服务器端将JSON字符串解码回数组。“

第二种方式是:

可以使用submitdata选项,并通过所有额外的参数,在这一点。

例如,

var bar = $('selector').val(); //extra value to server 
$(".edit_area").editable(your_url, { 
event : 'click', 
indicator : '<img src="/images/spinner.gif">', 
type : "text", 
submitdata : {foo: bar} 
}); 

希望这有助于