Вызов Ajax не работает в Firefox, но он отлично работает в IE

#jquery #asp.net #asp.net-mvc

#jquery #asp.net #asp.net-mvc

Вопрос:

Вызов Ajax не работает в Firefox, но он отлично работает в IE.

   jQuery.ajax({
                type: 'POST',
                url: '../Chart/CreateChart',
                //url: '../Chart/CreateChart?chartType=Pieamp;a=null',
                success: function (result) {
                alert("work successfully...1");
                }
            });
  

Комментарии:

1. вы получаете какие-либо ошибки в консоли firebug?

2. действительно ли в начале строки URL есть точки? действительно ли URL-адрес не начинается с / или с чего-то между a-zA-Z0-9?

Ответ №1:

Попробуйте это

   $.ajax({
                type: "POST",
                cache: false,
                url: '<%= Url.Action("Chart", "CreateChart") %>',
                success: function (result) {
                   alert("work successfully...1");
                },
                error: function (result) { alert('error '); }
            });
  

Используйте Url.Action(«Диаграмма», «CreateChart») . Я написал это в mvc2

Комментарии:

1. Нет, но я получаю значения из сеанса, используя код «var used=<%= Session[«usedmemory3″] %>;», но он показывает нулевые значения во время отладки firebug

2. я решил эту проблему, была проблема с пространством, т.Е. исправил эту проблему самостоятельно, но firexfox выдает ошибку, которая используется = <%…%>

Ответ №2:

Посмотрев на ваш URL, вам нужно использовать GET

  $.ajax({
      type: "GET",
      url: "<%= Url.Action("Chart", "CreateChart") %>",
      data: "chartType="   chartType   "amp;a="   a,
      success: function (result) {
            alert("work successfully...1");
            }
 });
  

Комментарии:

1. он работает в IE, как указано в OP, я думаю, что проблема где-то в другом месте

2. Верно, но должен ли OP не использовать GET, если URL, который он отправляет, ожидает параметров строки запроса?

3. верно, но, возможно, он не хочет показывать параметры в строке запроса в адресной строке…

Ответ №3:

Этот поток очень старый, но я столкнулся с подобной проблемой и, наконец, исправил ее. Поэтому я подумал, что это решение может помочь другим.

Вы можете использовать asp.net управление кнопками вместо кнопки html для запуска вашего ajax-вызова. Пожалуйста, замените кнопку на простое управление кнопкой ввода и убедитесь, что она должна работать правильно.