0

Ajax 양식을 제출하고 있지만 컨트롤러에 충돌하면 Request.IsAjax가 false를 반환하고 따라서 내 페이지가 리디렉션됩니다. 누구나 왜 이럴 수 있겠습니까?ASP .NET MVC 3 - Ajax 양식을 제출하는 것은 페이지 내에서 업데이트하는 대신 리디렉션합니다.

나는 인터넷을 검색하여 만든했는지 확인하십시오

  1. 나는 <appSettings>에서 내 Web.config의에서 다음과 같은 한 :

    <add key="UnobtrusiveJavaScriptEnabled" value="true" />

  2. 난에서 다음 스크립트를 내 소스를 볼 때 런타임에 페이지 :

    <script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript" /> 
    
    <script src="/Scripts/modernizr-1.7.min.js" type="text/javascript" /> 
    
    <script src="/Scripts/jquery-ui-1.8.11.min.js" type="text/javascript" /> 
    
    <script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript" /> 
    
    <script src="/Scripts/jquery.validate.min.js" type="text/javascript" /> 
    
    <script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript" /> 
    

빨간색 청어인지 확실하지 않지만 여기 벽돌 벽을 치기 때문에 언급 할 것입니다. Google 크롬에서 소스를 볼 때 첫 번째 스크립트에만 색상이 지정되어있어 생각하게 만듭니다. 나는 문법의 권리를 가지고 있지 않다 - 그러나 그것은 나에게 옳았다! Help!

+1

당신은 – Rafay

+0

은 물론, 여기에 지금까지입니다 AjaxForm 코드를 게시 할 수 있습니다 데이터 AJAX 업데이트 = "# 필터 - 결과" ID = "form0" METHOD = "POST"> PeteGO

+0

동일한 컨트롤러에서 my @ Ajax.ActionLinks가 올바르게 작동하므로 스크립트가 정상적으로 작동해야합니다. 뭔가 다른 것이어야합니다 ... – PeteGO

답변

0

문제는 양식을 제출하는 방법입니다. 드롭 다운 목록에서 onchange="submit()"을 수행하는 중이었습니다.

저는 이제 아약스 제출과 같은 자바 스크립트 제출이 실현되지 않았습니다! :)

<input type="submit" />을 사용하면 효과가 있습니다. 이 '<양식을 행동 = "/ 상품/TestAjaxMethod" 데이터 아약스 = "true"를 데이터 아약스 모드 = "대체"

0

스크립트 참조가 Ajax 호출보다 위에 있도록하십시오. 바이올린을로드하고 jquery 스크립트가 발견되어로드되었는지 확인하십시오.

+0

그들은 발견되고로드됩니다. 내 스크립트가 Ajax 호출보다 높습니다.이 태그는 닫는 body 태그 바로 앞에있는 페이지의 맨 아래에 있습니다. 이것이 문제가 될 수 있습니까? 필자는이 방법이 권장되는 방법이며 성능을 향상시킬 수 있다고 읽었습니다. – PeteGO

+0

시도해보고 :) –

+0

그냥 시도해 보렴, 행운 아 .. 실제로 내 Ajax.Actionlink 호출이 작동하고 있으므로 스크립트가 정상적으로 작동해야합니다. – PeteGO

관련 문제