0

送信を押した後、「こんにちは」と表示されますが、表示されません。なんで?

http://jsfiddle.net/GbfLG/1/

<div data-role="page" id="create">
    <script type="text/javascript">
      alert("HERE");
      $('#form').submit(function() {
      $.post("/").success(function(resp) {
        alert("RET");
        $.mobile.changePage($("#final"));
      });
      return false;
      });
    </script>
    <div data-role="content">
        <form id="form">
            <input type="submit" name="g" value="Submit" id="g"/>
        </form>
    </div>
</div>

<div data-role="page" id="final">
   Hello
</div>​
4

2 に答える 2

0

フォームが送信されています-が正常にreturn false;機能していません。試す..

$('#form').submit(function(e) {
    e.preventDefault();
    e.stopPropagation();
    ... stuff ...
});

また、フィドルでは$ .changePageを定義していないため、「undefined」として表示されます。

于 2012-12-15T20:42:21.540 に答える
0

jQMには、通常のWebページとは異なる一連のルールがあります。Javaスクリプトを間違った場所で使用しました。jQMを使用すると、可能であれば、すべてのjsコードを別々のファイルに記述します。

これはjsFiddleコードに加えられた修正であり、現在機能しています。適切なコンテキストに配置しました。あなたのjsコードは少し変更されていません。

例:

$('#create').live('pagebeforeshow',function(e,data){        
    $('#form').submit(function() {    
        $.post("/").success(function(resp) {
            $.mobile.changePage($("#final"));
        });
        return false;
    });
});    
于 2012-12-15T22:25:54.080 に答える