- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 jQuery Ajax WebMethod 调用,如下所示:
<script type="text/javascript">
$(document).ready(function () {
$("#btnsubmit").click(function () {
var arr = new Array();
arr.push($("#control1").val()); arr.push($("#control2").val()); arr.push($("#control13 option:selected").val()); arr.push($("#control4 option:selected").val()); arr.push($("#control15 option:selected").val());
var requestedData = JSON.stringify(arr);
requestedData = "{'details':'" + requestedData + "'}";
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "EmployeeDemotion.aspx/Save",
data: requestedData,
dataType: "json",
success: function (result) {
//check the value returned from the WebMethod and provide alerts accordingly
},
error: function (result) {
alert("Error");
}
});
});
});
</script>
WebMethod 如下:
[WebMethod(EnableSession = true)]
public static InsertDetails[] Save(string details)
{
DataTable dt = new DataTable(); DataTable dts = new DataTable();
List<InsertDetails> data = new List<InsertDetails>();
JavaScriptSerializer js = new JavaScriptSerializer();
string[] Tags = js.Deserialize<string[]>(details);
object[] obj = new object[8];
obj[0] = Tags[0].ToString(); obj[1] = Tags[1].ToString(); obj[2] = Tags[2].ToString(); obj[3] = Tags[3].ToString();
obj[4] = Tags[4].ToString();
int a = //say condition 1
int b = //say condition 2
if (a< b)
{
//insert into database and set a value which says the insertion has succeeded
}
else
{
//alert that data cannot be inserted
}
return data.ToArray();
}
现在我需要将任何可能类型( bool 值、数组、字符串、整数或其他)的值返回给 ajax 方法,以便 ajax 方法中的成功函数提醒插入状态(如代码片段中所注释) ) IE;一个值应该与最后一条语句“return data.ToArray();”一起返回到ajax方法。我不要求返回元素“数据”,验证插入的值应与“数据”一起返回或以任何其他形式返回。
最佳答案
不知道你想要什么。您是希望将数据和标志都返回给客户端函数,还是只返回标志。
情况 1:您想要的只是返回有关 save
像这样改变你的保存方式
[WebMethod(EnableSession = true)]
public static string Save(string details)
{
string message =string.Empty;
/// rest of the usual code of yours
///
if (a< b)
{
//rest of the code
message = "Insertion Successful";
}
else
{
//rest of the code
message = "Error Occured";
}
}
并在您的客户端中使用 ajax success
,简单地执行此操作:
success: function (result) {
alert(result.d);
}
情况 2:如果插入成功,您也想发送数据
制作一个包装器并将数据和标志附加到它。序列化它和然后将其发送到客户端功能。即
//wrapper class
public class ServiceResponse
{
public bool IsSuccess {get;set;}
public string Message {get;set;}
}
现在在你的 save
中执行此操作:
[WebMethod(EnableSession = true)]
public static string Save(string details)
{
ServiceResponse serviceResponse =new ServiceResponse();
/// rest of the usual code of yours
///
if (a< b)
{
//rest of the code
serviceResponse.IsSuccess= true;
serviceResponse.Message = String.Join(",",data.ToArray());
}
else
{
//rest of the code
serviceResponse.IsSuccess = false;
}
return new JavaScriptSerializer().Serialize(serviceResponse);
}
并在您的客户端方法中使用它,例如:
success: function (result) {
var jsonData = $.parseJSON(result.d);
if(jsonData.IsSuccess){
alert('success');
grid.data(jsonData.Message);
}
else{
alert('failure');
}
}
关于c# - 根据 WebMethod 中提供的条件从 WebMethod 返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16525321/
任何人都知道是否可以在 webMethods developer 7.1 中使用流服务创建新包。我想要做的是创建一个流服务,它将一个字符串(包名称)作为输入,结果它将创建一个以该字符串作为名称的新包。
在 webMethods 流服务中,我有一个包含 (n) 个文档的文档列表。每个文档有 3 个值。每个文档必须是字符串表中的新行(有 3 列)。 如何使用 webMethods 流程做到这一点? In
几天以来我一直在使用 Software AG Designer 和 webMethods,我想知道是否可以为我的流程添加时间线? 让我更准确地解释一下:当我在 SAG Designer 上发布和运行我
我想映射一个数组,在 WebMethods 中它是一个文档列表。我认为您可以只映射该变量而不映射所有子项。我已经这样做了,但 PassArea 中没有显示任何内容。 (PassArea是之后发送给主机
我如何在 Integration Server 中为 http-503 请求服务不可用错误设置响应 header 。由于它没有命中我的服务,我无法使用 pub.flow:setResponseHead
我必须在工作中切换计算机,而我的 WEBMethods 项目没有移至新计算机。安装 WEBMethods 后,我们注意到我的项目尚未被复制。 所以我进入笔记本电脑并找到包含 webmethods 项目
我有一个 jQuery Ajax WebMethod 调用,如下所示: $(document).ready(function () { $("#btnsubmit").cli
目的是创建一组人们可以重用的 Web 服务。这些服务主要与创建、检索和处理数据的后端数据库交互。 我们希望公开服务,以便人们可以用来创建数据混搭和其他应用程序。 最终用户是可以在我们的域内或域外的网页
如何在 webMethods 中创建/安排调度程序来调用具有 2 个(或更多)输入选项的服务? 在这里,我需要通过选项(输入)调用服务,该服务将路由到另一个到 TN 的 map 服务,但我需要了解具有
我想在某些 Java 服务(WebMethod 设计器 9.7)中使用外部 jar。我在 Internet 文档中看到我必须将我的 jar 放在集成服务器上的包/code/jars/路径中,以及我在
我正在创建一个流服务,并在其中插入了另一个流,该流将文档列表作为输出并包含 5 个字符串字段。问题是我无法循环该文档列表,无论我在输入数组(getPropertyOutput,getPropertyO
我正在尝试在 Webmethods 映射步骤中使用正则表达式模式。问题是忽略使用正则表达式修饰符匹配字符串的情况。 例如: input is 'TEST' or 'test' or 'Test' Br
在 .NET 中,是否有一种标准的方法来指示 Web 服务方法已被 已弃用 ? 澄清一下,“Web 服务方法”是指一种用 [WebMethod] 修饰的方法。属性。 标准做法是只使用 [Obsolet
我第一次尝试从 javascript 调用服务器端函数,但没有成功,因为 webmethod 没有被调用。 aspx 文件包含一个 bootstrap 样式的按钮;单击时,我需要向用户的“收藏夹”列表
我正在创建一个模式,当我单击时,我会将 id 和操作传递到服务器端以保存日志。 这是我的示例代码,但无法使其工作。我正在使用用户控件。 $("a.modal_show2").click(functio
我想在设计器之外使用单独的 java 程序收集 webmethods 集成服务器特定包的依赖关系。 这些依赖项存储在文件系统中的什么位置? 谢谢 最佳答案 在包级别声明的包依赖项存储在包 list 文
我最近看到一个 jQuery 示例,其中对“Default.aspx/Test”进行了 POST,其中 Test 是 Default.aspx 中的 WebMethod,请求的内容类型是“applic
有谁知道如果传递了一个冗长的字符串对象,json 对象是否有任何问题。 我正在调用一个 web 方法,其内容作为编码的 html 数据。生成的字符串大约有 7000 个,并且没有从客户端传递到 web
我在 Asp.Net 中使用 C# 工作,我在用户控件中定义了一个 [WebMethod]。我不想使用网络服务。 如何调用具有[WebMethod] 属性的方法?我想从 jQuery (Ajax) 请
我在 Visual Studio 2008 中将 Virtual Basic 与 ASP.NET 结合使用。我正在使用 Webmethod 与客户端在服务器之间进行通信。可以查询和返回少量数据,但是当
我是一名优秀的程序员,十分优秀!