2013-06-18 56 views
0

我的代碼工作:的javascript:document.forms [0] .submit()不IE10

<form method="post" action="PreDischargeEducation.aspx" id="form1"> 
<div class="aspNetHidden"> 
<input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" /> 
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> 
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> 
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/lots of stuff here" /> 
</div> 

<script type="text/javascript"> 
//<![CDATA[ 
var theForm = document.forms['form1']; 
if (!theForm) { 
    theForm = document.form1; 
} 
function __doPostBack(eventTarget, eventArgument) { 
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) { 
     theForm.__EVENTTARGET.value = eventTarget; 
     theForm.__EVENTARGUMENT.value = eventArgument; 
     theForm.submit(); 
    } 
} 
//]]> 
</script> 
<div class="aspNetHidden"> 
    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBgKblbSKDQLWxZaxDwK+n5yTDgKN97n9CAL1m+DgCwKZseiDBoE7ceDrS0JTSg/qHRKRiCdcZ+nF2M69ovt+U0TvDhOh" /> 
</div> 

然後在底部我

<a class="box" href="javascript:document.forms[0].submit()">Submit &amp; Continue...</a> 

但是,按鈕不走。表單[0]在IE10中不可用嗎?

此外,當我在字段中使用Return鍵進行提交時,數據似乎不會進入後端ASP.NET代碼。我的JavaScript不好?在其他瀏覽器中正常工作。

編輯:標籤是在真正的代碼之後。

+0

「form」標籤在哪裏關閉? –

+0

建議可以在'form'關閉後移動腳本 –

+0

我沒有附上,但它是在 –

回答

0

我能夠通過包裝jQuery的形式來解決問題的這個噩夢提交的的setTimeout:

$('#complete_profile input[type="submit"]').click(function(){ 
    setTimeout(function() { 
    $('#complete_profile form').submit(); 
    }, 0); 
}); 

這可能會導致重複提交時,表單也提交,不過,所以要小心。