2012-02-24 2 views
1

У меня проблема с методом RedirectToAction.RedirectToAction не работает в IE с jQuery

я называю DeleteTalent действие из моего кода JQuery и DeleteTalent вызывает RedirectToAction("MyBooks") действия после удаления таланта, чтобы показать обновленный контент.

Это прекрасно работает в Chrome и Firefox, но MyBooks действие не вызывается в Internet Explorer. Может ли кто-нибудь сказать мне, почему.

спасибо.

`<script type="text/javascript"> 
var controller = "/MyBooks"; 
var action = 'ModifyTalent'; 

var temp = []; 

$('input[name=Validate]').click(function() 
{ 

    $('textarea[name=presentation]').each(function() 
    { 
     var toPush; 
     if ($(this).attr('id') == null) 
     { 
      toPush = { MyPresentationId: -1, Presentation: $(this).val() }; 
     } 
     else 
     { 
      toPush = { MyPresentationId: $(this).attr('id').split('_')[1], Presentation: $(this).val() }; 
     } 

     temp.push(toPush); 
    }); 

    var presentations = JSON.stringify(temp); 
    var talentId = $('[name=talent]').attr('id').split('_')[1]; 
    var talent = $('[name=talent]').val(); 
    var datas; 

    if ($(this).attr('id') == -1) 
    { 
     action = 'CreateTalent'; 
     datas = 'id=' + $('#IdBook').val() + '&talent=' + talent + '&presentations=' + presentations; 
    } 
    else 
    { 
     datas = 'id=' + talentId + '&talent=' + talent + '&presentations=' + presentations; 
    } 

    $.ajax({ 
    url: controller + '/' + action, 
    type: 'POST', 
    dataType: 'html', 
    data: datas, 
    success: function (data) { 
    $("#bodyPage").html(data.toString()); 
    } 
    }); 
}); 

`

+0

Поскольку ваша проблема IE конкретных Я хотел бы представить проблему в стороне клиента - так что ошибка в вашем JavaScript/JQuery. Не могли бы вы разместить свой код. –

+0

Этот код предназначен для EditTalent.ascx .. , когда вы проверяете, вызывается действие ModifyTalent, оно вносит изменения в базу данных и вызывает действие MyBooks для возврата к списку талантов. спасибо .. – user1213375

+0

Вы не можете «Перенаправить «Запрос AJAX. Вы уверены, что это работает в Chrome и FF? – gdoron

ответ

1

Похоже, что вы используете AJAX POST для вызова контроллера/действия.

RedirectToAction не работает, если вы используете сообщение AJAX. Я нашел это, пытаясь сделать то же самое в JQuery Mobile, который использует пост AJAX.

RedirectToAction not working