IEだけjavascriptのsubmitがうまく動かない

2013年4月21日 at 23:38

フォームブロックを改造してブロックを作成しましたが、javascriptでform submitしている部分が、IEだけうまく動かず困っております。
※IEは8と9でテストしました。

javascriptは動作しているようなのですが、$("#mainform").submit();とjQueryでサブミットしている部分(mainformはformのIDです)でうまくcontoroller.phpのファンクションに渡っていないようです。
document.mainform.submit();
return false;
としても変わりませんでした。
ただし、formでaction="tst.php"とするとtst.phpにアクセスするので、actionはそのものは動いているようです。

フォームは

<form id="mainform" name="mainform" method="POST" action="<?php echo $this->action('detail_save_entry'); ?>">

となっており、HTMLでは
index.php?cID=1&bID=116&arHandle=Main&ccm_token=1366544339:4df309673d23849626922349d5547721&btask=passthru&method=detail_save_entry

ですので、controller.phpの「function action_detail_save_entry()」の最上部に「Log::addEntry("test",t('notice'));」として、ログに記録されるようにしましたが、IEだけ記録されません。(Firefox、Chromeは記録されます)

この問題の解決、もしくは問題抽出の方法がありましたら、ご教授いただけますでしょうか。

サーバーはCentOS6.3、 Apache2.2.15、PHP 5.4.14 とC4SAの両方で試しましたが、同様な症状です。

よろしくお願いします。

タグ:

Re: IEだけjavascriptのsubmitがうまく動かない

2013年4月22日 at 13:11
いろいろ調べてみると、現象が見えました。
<div id="frontFileManager"></div><br />
<?php Loader::helper('concrete/urls'); ?><br />
<script type="text/javascript"><br />
$(function() {<br />
$("#frontFileManager").load("<?php echo ConcreteUrlsHelper::getToolsURL('files/search_dialog', 'apharma')?>?ocID=" + CCM_CID + "&search=1&orderID=" + '<?php echo $orderID; ?>' );<br />
});
<br />
</script>

のようにしてファイルマネージャをフロントに出して使用しているのですが、ファイルマネージャが呼びだされている時だけ、IEでcontroller.phpのファンクションに上手く値が渡せていないようです。
 

Re: Re: IEだけjavascriptのsubmitがうまく動かない

2013年4月22日 at 13:58
自己解決しました。
<form>~</form>の間でファイルマネージャを呼び出していたので、formが入れ子になっていました。

お騒がせいたしました。