Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Sencha Touch-AJAX不工作_Javascript_.net_Ajax_Asp.net Mvc 2_Sencha Touch - Fatal编程技术网

Javascript Sencha Touch-AJAX不工作

Javascript Sencha Touch-AJAX不工作,javascript,.net,ajax,asp.net-mvc-2,sencha-touch,Javascript,.net,Ajax,Asp.net Mvc 2,Sencha Touch,在我做了一个改变之前,这个功能一直在工作,现在只有当我通过Chrome访问该网站的移动版本时,它才起作用,但在任何移动设备上都不起作用了。奇怪的是,因为它是通过Chrome浏览器工作的,所以我不能复制这个问题。这是我的AJAX调用: Ext.Ajax.request({ url: '/Home/PostMessage', // url to post msg..

在我做了一个改变之前,这个功能一直在工作,现在只有当我通过Chrome访问该网站的移动版本时,它才起作用,但在任何移动设备上都不起作用了。奇怪的是,因为它是通过Chrome浏览器工作的,所以我不能复制这个问题。这是我的AJAX调用:

Ext.Ajax.request({
                            url: '/Home/PostMessage',
                            // url to post msg..
                            method: 'POST',
                            params: {
                                message: Ext.getCmp('msgText').getValue(),
                                lat: initialLocation.lat(),
                                lng: initialLocation.lng(),
                                loc: loc,
                                name: '',
                                parentId: 0,
                                FBId: 0
                            },
                            success: function() {
                                //Ext.getCmp('post-bar').hide({type: 'pop'});
                                Ext.getCmp('post-bar').hide();
                                setTimeout(function() {
                                    Ext.getCmp('posts-tab').doComponentLayout();
                                },
                                300);
                                jabsy.stores.Listpost.load();
                            },
                            failure: function() {
                                navigator.notification.alert('Could not post your message', // message
                                'Server Error!', // title
                                'OK' // buttonName
                                );
                            }
                        });
我唯一添加的是将
FBId
参数添加到post参数。获取参数的操作方法如下所示:

public ActionResult PostMessage(double? lat, double? lng, string message, string loc, string name, int parentId, int FBId)
        {
            var match = Regex.Match(message, @"^\s*(.)(?:\1|\s)*$");
            string ip = string.IsNullOrWhiteSpace(Request.ServerVariables["REMOTE_ADDR"].ToString()) ? "" : Request.ServerVariables["REMOTE_ADDR"];
            if (lat.HasValue && lng.HasValue && (message.Length <= 100) && !match.Success && !string.IsNullOrWhiteSpace(message))
            {
                DAL dal = new DAL();
                bool success = dal.spInsertMessage(message, lat.Value, lng.Value, ip, loc, name, parentId, FBId.ToString());
                return Json(success);
            }
            else
            {
                return Json(false);
            }
        }
public ActionResult PostMessage(双lat、双lng、字符串消息、字符串loc、字符串名称、int parentId、int FBId)
{
var match=Regex.match(消息@“^\s*()(?:\1|\s)*$”;
string ip=string.IsNullOrWhiteSpace(Request.ServerVariables[“REMOTE\u ADDR”].ToString())?“”:Request.ServerVariables[“REMOTE\u ADDR”];

if(lat.HasValue&&lng.HasValue&&(message.Length所以我想到了这一点。见鬼,我的灵感来自Joey的评论——我用我的Android手机从浏览器中清除所有缓存/cookies/浏览历史,然后再试一次

它现在可以工作了。我不知道为什么会发生这种情况。我以前更新过相同的参数,例如,我在添加当前新参数之前添加了
parentId
参数,但这个问题没有发生


不知道,但这就是解决问题的方法。如果有人知道原因或如何防止将来发生这种情况,请发表评论。

您使用的是缓存清单吗?我不知道那是什么,所以我猜不是,但这只是猜测。这是在调用故障处理程序吗?您能通过调试器或wireshark运行服务器吗d查看请求是否到达服务器?移动设备从未像故障处理程序那样出现错误弹出窗口。通过internet浏览器,Sencha Touch站点运行良好,可以发送到服务器。我不知道如何使用移动设备跟踪所有内容b/c我只能在代码输入后在移动设备上进行测试生产。