如何摆脱jquery(jeditable)混乱

我不是很擅长jQuery,但决定在我的网站上使用jEditable插件,因为我认为它看起来不错并且解决了目的。 但是,我现在有点纠结。

我使用这个插件编辑数据,编辑后的数据被发送到数据库,一些字段由它更新。 更新这些字段的存储过程将返回一些数据。 我想把这些数据还给我。 我想首先在’alert’语句中看到返回的数据,然后我可以从那里获取它。

这个插件的回调方法只有值和设置。

有没有办法在使用这个插件时从服务器端获取一些数据?

我已经为我的网站做了这个。 这应该让你开始。

$("#editable_text").editable(submitEdit, { indicator : "Saving...", tooltip : "Click to edit...", name : "Editable.FieldName", id : "elementid", type : "text", }); function submitEdit(value, settings) { var edits = new Object(); var origvalue = this.revert; var textbox = this; var result = value; edits[settings.name] = [value]; var returned = $.ajax({ url: "http://URLTOPOSTTO", type: "POST", data : edits, dataType : "json", complete : function (xhr, textStatus) { var response = $.secureEvalJSON(xhr.responseText); if (response.Message != "") { alert(Message); } } }); return(result); } 

您需要返回表单的Json响应

{“消息”=“FOO”}

这将显示在警报中。

我一直在努力尝试解决这个问题的经典ASP,并认为像我这样的其他人也可能会在这里结束。 以下是我在经典ASP中解决这个问题的方法:

服务器validation失败…来自whatever.asp的响应

 <% response.status "406 Not Acceptable" response.write "error message here" response.end %> 

无论what.asp发送的任何错误消息可以通过onerror: ,该字段将重置为原始值。

 $("#editable_text").editable("whatever.asp", { indicator : "Saving...", tooltip : "Click to edit...", type : "text", onerror: function (settings, original, xhr) { original.reset(); //do whatever you want with the error msg here alert(xhr.responseText); } }); 

(如果值通过服务器validation,只需响应。写任何更新的值)

您要提交更新的URL(将是某种动态页面,如PHP,JSP,Java servlet等)将存储过程的返回值添加到响应中吗? 如果是这样,我希望数据显示在它们传递给回调的“值”字段中。

当我使用jEditable在线演示时,响应只包含更新的文本,但这是他们使用的特定PHP代码的function,与jEditable javascript代码没有任何关系。

中国用户可以看到这个博客: http : //wxianfeng.com/2009/10/14/rails-in-place-edit-with-jquery

似乎jEditable是jquery ajax方法的包装器。 使用jquery的本机ajax方法调用替换所有jEditable调用应该不会太困难。

您可以使用’success’替换名为’callback’的jEditable回调,’success’是jquery的ajax函数中的回调名称。

文档说’回调’函数的第一个参数是“value”:

 'callback': function (value, settings) { ... 

文档没有说的是这里的“值”是服务器写出的内容。 它不限于原始值。 我发回一个JSON编码的结构,所以我的回调函数的第一行是这样的:

 var updateInfo = JSON.parse(value); 

然后我根据需要从updateInfo结构中提取字段。