<form action="/path/to/somewhere" method="post" name="testForm" id="testForm" onsubmit="try { var myValidator = validate_testForm; } catch(e) { return true; } return myValidator(this);">
という具合に、もれなくonsubmit属性がついてきます。
今回はこのonsubmitを消すという処理をしました。
$('#test_form').attr("onsubmit");
でさくっと消せるかな~、と思ってたのですが、消えません。
ググってみたところ、
$('#test_form').removeAttr("onsubmit");
で消せることが分かりました。
http://joshuaclayton.github.com/code/2009/06/08/handling-jquery-and-onsubmit.html
ちなみにonsubmitより利用頻度の高いonclickで検索すると、やはり属性が削除できず困っているというページが何件かヒットしました。
参考:onclick属性の操作
http://d.hatena.ne.jp/ftsh/20100729/1280396560
http://stackoverflow.com/questions/249074/how-to-change-onclick-handler-dynamically
それからこちらは「nameやidに"submit"という名前を付けるとjqueryの動作が怪しくなる」という件について。
属性の削除とは別の問題ですが、今回同様の問題に遭遇して、解決の糸口になりました。
http://www.takenoshin.com/web/blog/page/6.html
0 件のコメント:
コメントを投稿