2011-01-28 4 views
0

이 간단한 자바 스크립트 코드 조각은 인터넷 익스플로러 8 너무 복잡한 것 같다 심지어 9 이해하기 :Internet Explorer에서 내 특별 jQuery 양식을 이해하는 방법은 무엇입니까?

// Why on the (expletive) hell does Internet Explorer exist? 
$('<form/>'>.attr('action', '..') // or ../index.php 
      .attr('method', 'post') 
      .append(hiddenParam('user', $('#name').val()) 
      .append(hiddenParam('pass', cryptoFunc($('#pswd').val()) 
      .submit().remove(); 

많은 재 작성을 포함하지 않는 내 코드에 동등한이 있습니까? (나는이 사이트에서 jQuery로 생성 한 임시 양식을 많이 가지고 있습니다.)

+3

는 IE는 양식이 DOM에 삽입되지 않습니다 것을 좋아하지 않을 수 있습니다. – gradbot

답변

4

.submit 바로 앞에 추가하면 어떻게 될까요? 예컨대 :

$('<form/>').attr('action', '..') // or ../index.php 
      .attr('method', 'post') 
      .append(hiddenParam('user', $('#name').val()) 
      .append(hiddenParam('pass', cryptoFunc($('#pswd').val()) 
      .appendTo(document.body) 
      .submit().remove(); 

그리고 그것을하지 않으면, 숨 잡기 위해 브라우저에게 순간을 제공하려고

:

var form = $('<form/>'); 
form.attr('action', '..') // or ../index.php 
    .attr('method', 'post') 
    .append(hiddenParam('user', $('#name').val()) 
    .append(hiddenParam('pass', cryptoFunc($('#pswd').val()) 
    .appendTo(document.body); 
setTimeout(function() { 
    form.submit().remove(); 
}, 0); 
+0

네, 효과가있었습니다! 그래도 나는 IE가 싫어. – pyon

+0

@ 에두아르도 : 기꺼이 도와주었습니다. 이 특별한 경우에 제출하기 전에 문서에 양식을 추가해야하는 것은 당연한 것입니다. :-) –

+0

왜? 어떻게 든 '

'은 HTML 문서의 본문과 관련이있는'HTTP POST' 요청을 보내는 데 사용할 수 있습니까? – pyon

관련 문제