Tag: ajax

使用$ .ajax调用Web方法时,身份validation失败错误

当我进行JQuery调用时,我收到一个身份validation失败的响应: { Message: “Authentication failed.”, StackTrace: null, ExceptionType: “System.InvalidOperationException” } jQuery调用: $(document).ready(function () { //Handle the change event for the drop down list $(“#ddRegions”).change(function () { //create the ajax request $.ajax({ type: “POST”, //HTTP method url: ”, //page/method name data: “{}”, //json to represent argument contentType: “application/json; charset=utf-8”, dataType: “json”, success: function (msg) { //handle […]

Microsoft ReportViewer Web控件需要ScriptManager

我正在尝试以编程方式在IHttpHandler上下文中的自定义页面内呈现报表查看器 ReportViewer rv = new ReportViewer(); ReportDataSource rds = new ReportDataSource(); rds.Name = “Report”; rv.LocalReport.ReportPath = “Report.rdlc”; rds.Value = SomeReportObject; rv.LocalReport.DataSources.Add(rds); rv.LocalReport.Refresh(); ScriptManager scriptHandler = new ScriptManager(); MyPage p = new MyPage(); p.Controls.Add(scriptHandler); p.Controls.Add(rv); using (TextWriter myTextWriter = new StringWriter()) { using (HtmlTextWriter myWriter = new HtmlTextWriter(myTextWriter)) { p.RenderControl(myWriter); } } 虽然我已将ScriptManager添加到页面但运行时抱怨ReportViewer需要一个,但它会在p.RenderControl(myWriter)行引发以下exception 报表查看器Web控件需要Web表单上的System.Web.UI.ScriptManager。 这是MyPage类 public […]

如何在updatepanel中的异步回发后推迟客户端的更新

我有一个使用asp.net的UpdatePanels的旧系统 postback完成后,我们知道UpdatePanel的内部已更新 我可以在客户端以某种方式延迟此更新吗? 那可能吗? 因此,当postback开始时,我会在客户端设置一个javascript datetime object 一旦postback完成,并且data从服务器返回,在更新client side interface ,我检查已经过了多少毫秒并且我延迟了客户端的更新,直到经过了某些毫秒 这可能吗? asp.net 4.5 c# 让我澄清一下 我希望在ajax回发请求开始后,页面的每次更新都正好是500毫秒 但服务器延迟未知,并且每个位置都会发生变化 假设对于人1,服务器延迟是122毫秒 对于人2,服务器延迟是234 对于人3,服务器延迟是444 所以我将不得不在客户端延迟页面更新 为此人1:378毫秒 对于这个人2:266毫秒 对于这个人3:56毫秒 我检查过,我发现有一个function: Sys.WebForms.PageRequestManager pageLoading Event 所以如果我可以以某种方式覆盖此函数调用的函数来更新我可以实现的页面 ( 我仍然不知道它调用什么function来完成客户端的更新操作 ) 让我们假设在里面 Sys.WebForms.PageRequestManager pageLoading Event updateTheChanges函数 所以,如果我可以覆盖此updateTheChanges函数并延迟调用它我可以实现我想要的 我需要这样的东西,它将覆盖updatepanel的更新function。 所以我可以延迟调用这个函数 ASP.Net Webforms w / AJAX慢渲染 TY 这里是web资源文件 脚本资源1: http : //pastebin.com/0rSCMn3g 脚本资源2: http : […]

C#MVC Controller无法从Ajax POST请求中获取十进制或双精度值

我的问题是,当我尝试通过ajax将double或decimal发送到我的C#MVC Controller时,该值始终为null。 我可以将值作为字符串发送,我可以毫无问题地发送整数。 为什么我不能发送带小数的值? 当我检查从客户端发送的请求时,存在正确的值(表单数据是price=84.50 )。 错误: 参数字典包含非可空类型’System.Decimal’的参数’price’的空条目 HTML: Send 使用Javascript: $(‘.btn-success’).click(function () { //var price = $(‘#price’).val(); – Did not work //var price = Number($(‘#price’).val()); Did not work var price = Number($(‘#price’).val()).toFixed(2); // Does not work $.ajax({ url: ‘PriceFunction’, type: ‘POST’, data: { price: price, } }).done(function () { }).fail(function () { console.log(“Error in […]

什么是在ASP.NET上检测JSON请求的最佳方法

大多数ajax框架似乎在标头或查询字符串上使用“X-Request-With”进行标准化。 在ASP.NET MVC中,您可以使用扩展方法 Request.IsAjaxRequest() 因为ajax客户端可以请求几种不同的内容类型,而不仅仅是“application / json”ex:“application / xml”。 我正在使用以下代码片段/扩展方法,但我希望看到其他人在做什么,或者是否有我错过的内容,或更好的方法。 public static bool IsJsonRequest(this HttpRequestBase request) { return request.Headers[“Accept”].Split(‘,’) .Any(t => t.Equals(“application/json”, StringComparison.OrdinalIgnoreCase)); } 提前致谢。

在asp.net mvc 4中使用jQuery和部分视图

我有一个具有以下布局的视图 父视图由图中所示的几个PartialView组成。 其中一个是一个列表,其中每个项目都有一个相应的Edit按钮,该按钮将项目加载到另一个PartialView中,但是这是通过ajax加载到modal dialog引导程序中。 这部分工作正常。 我遇到的问题是没有执行与此模式的控件相关的脚本或jquery事件。 例如,从不显示datepicker小部件,无法捕获下拉列表的更改事件,或捕获表单的提交事件或“提交”按钮的单击事件。 所有脚本都放在主视图中。 例如,这是模态提交的事件处理程序: $(function () { $(‘#myModal form’).on(‘submit’, function () { console.log(“okk”); clearErrors(); $.post($(this).attr(‘action’), $(this).serialize(), function (data, status) { $(‘#myModal’).modal(‘hide’); $(“#details”).html(data); }).error(function (error, status, a, b) { $(‘.modal-body p.body’).html(error.responseText); }); return false; }); }); 在我的_Layout.cshtm中,我已经包含了必要的脚本(我认为): @Scripts.Render(“~/js”) @Scripts.Render(“~/bundles/globalization”) @RenderSection(“scripts”, required: false) 其中“〜/ js”是: bundles.Add(new ScriptBundle(“~/js”).Include( “~/Scripts/jquery-{version}.js”, “~/Scripts/jquery-migrate-{version}.js”, “~/Scripts/bootstrap.js”, “~/Scripts/bootstrap-datepicker.js”, “~/Scripts/jquery.validate.js”, […]

不同浏览器中的LinkBut​​ton PageMethod行为不一致

我在一个执行回发的页面上有一个LinkBut​​ton,但也有一个onClientClick事件。 我们的想法是在客户端数据的后台设置一些会话变量(不要问)。 我在Web方法中设置了一个断点来逐步执行代码,我们遇到的是取决于浏览器,PageMethods可能会返回成功消息,失败消息或根本没有消息 。 此外,无论PageMethods结果如何,都可以调用或不调用Web方法。 这是一个方便的结果小图表: Browser PageMethods WebMethod ————– ————- ——————– IE 8, 9, 10 Success Called successfully Safari 5.1.7 Failure *Never called* Firefox 25.0.1 *Neither* Called successfully Chrome v31 Failure Called successfully 这是四种不同的浏览器,以及四种不同的结果。 我已经尝试在服务器端和客户端代码中生成具有相同效果的链接按钮,甚至没有在WebMethod中设置会话变量,结果相同。 可以使用以下简单代码重现代码: function doStuff() { var a = ‘a’; var b = ‘b’; PageMethods.doStuffWebMethod(a, b, doStuffSuccess, doStuffFail); } function doStuffSuccess() […]

Javascript ajax将文本框文本发布到ActionResult asp.net mvc

HTML JSON var TextBoxData = { Text: LoginPasswordText.GetValue(), }; function LoginButton1OnClick() { $.ajax({ url: “/Home/MyActionResult”, type: “POST”, dataType: “json”, contentType: ‘application/json’, data: JSON.stringify(TextBoxData), success: function (mydata) { alert(“Success”); } }); return true; } MyActionResult public ActionResult MyActionResult(string Text) { return view(); } 上面的代码(Html,Json,MyActionResult)工作得非常好,但它是json数据。 我想将上面的代码作为ajax数据发送。我尝试下面的代码。 但是下面的代码不起作用,如果我点击按钮,我无法发送任何数据,什么都没有。我想念哪里? function LoginButton1OnClick() { var TextBoxData = { Text: LoginPasswordText.GetValue(), }; […]

如何使ModalPopup拖放

我在我的Webapplication中使用来自Ajax ControlToolkit的ModalPopupExtender。我设置它的Drag属性为true,但是当我拖动弹出面板并将其放在新位置时,它立即回到原始位置。我想得到效果像Sample一样,可以在不同的位置拖放。 如何在页面上的示例.. http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ModalPopup/ModalPopup.aspx 我的代码: PS:如果对话框打开,我想在后台的TextBoxes中输入。 更新: … Benutzerinformationen …

不调用Ajax工具包文件上载

我在同一页面上有两个ajaxtoolkit文件ulopads 和代码背后 protected void ajaxUpload2_OnUploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e) { string filePath = “~/Images/” + e.FileName; filePath = filePath.Split(‘\\’).Last(); Session[“img2”] = filePath.ToString(); AjaxFileUpload1.SaveAs(MapPath(filePath)); } protected void ajaxUpload1_OnUploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e) { string filePath = “~/Images/” + e.FileName; filePath = filePath.Split(‘\\’).Last(); Session[“img1”] = filePath.ToString(); ajaxUpload1.SaveAs(MapPath(filePath)); } 问题是每当我使用它上传的AjaxFileUpload1并调用void ajaxUpload2_OnUploadComplete方法但是如果我使用ajaxUpload1,则再次调用方法ajaxUpload2_OnUploadComplete,但不调用方法ajaxUpload1 为什么?? 谢谢。