3

次のようなことをするのは有効です:

<form id="legalopt">
    <button type="submit" id="confirmopt" onclick="function2();">Click ME!</button>
</form>

$('#legalopt').submit(function(e){
    e.preventDefault();
    function1();
}

ご覧のとおりfuncion1()、フォームが送信ボタンによって送信されたときに起動され、ボタンfunction2()の呼び出しによっても呼び出されonlickます。

これは有効ですか?クロスブラウザ対応ですか?

4

3 に答える 3

6

どちらも同時に実行しているので、

$('#legalopt').submit(function(e){
  e.preventDefault();
  function2();
  function1();
});
于 2013-09-09T16:08:52.150 に答える
1

関数を順番に実行したい場合は、最初に呼び出される関数に関数を引数として渡すとよいでしょう。

function1(function2);
...
// At the end of function1's code
function2();
于 2013-09-09T16:16:53.503 に答える
-1

私の答えに投票した人は誰でも、ここにフィドルがあります

<form id="legalopt">
  <button type="submit" id="confirmopt" onclick="function1();function2();">Click ME!</button>
</form>

<div id="box"></div>


#box {
  position: absolute;
  width: 150px;
  height: 150px;
  top: 150px;
  left: 12px;
  border: 1px solid gray;
}



$(function() {

  $('#legalopt').submit(function(e) {
    e.preventDefault();
    function1();
    function2();
  });

  function function1() {
    $('#box').stop().animate({ left: '250px' }, 600);
  }
  function function2() {
    $('#box').css({ background: '#900' }).animate({ left: '12px'}, 600);
  }

});
于 2013-09-10T00:33:10.317 に答える