我不太擅长jQuery,但我决定在我的网站上使用jEditable插件,因为我认为它看起来很好,解决了这个问题。然而,我现在有点纠结了。
我使用这个插件来编辑数据,编辑后的数据被发送到数据库,一些字段被它更新。更新这些字段的存储过程将返回一些数据。我希望将这些数据返回给我。我只想先在“alert”语句中查看返回的数据,然后再从那里获取它。
这个插件的回调方法只有value和settings。
在使用这个插件时,有没有办法从服务器端获取一些数据呢?
发布于 2009-06-22 22:36:13
我已经为我的网站做了这样的事情。这应该可以让你开始学习了。
$("#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响应
{ "Message“= "FOO”}
这将显示在警报中。
发布于 2010-07-19 02:36:07
我一直在用经典的ASP来尝试解决这个问题,我想其他像我一样的人可能也会在这里结束。下面是我是如何用经典的ASP解决这个问题的:
服务器验证失败...来自whatever.asp的响应
<%
response.status "406 Not Acceptable"
response.write "error message here"
response.end
%>
无论whatever.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);
}
});
(如果该值通过了服务器验证,则无论更新的值是什么,只需使用response.write )
发布于 2009-06-08 19:46:22
提交更新的URL (将是某种动态页面,如PHP、JSP、Java servlet等)是否将存储过程的返回值添加到响应中?如果是这样的话,我希望数据会出现在"value“字段中,并传递给回调函数。
当我使用PHP在线演示时,响应只包含更新后的文本,但这是他们使用的特定jEditable代码的函数,与jEditable javascript代码没有任何关系。
https://stackoverflow.com/questions/966539
复制相似问题