0

通常のjqueryモバイルページで動作するajaxフォームがありますが、ダイアログで転送すると動作しません。私のスクリプトは、設定されているクリックイベントを読み取らず、デフォルトですべての値を同じページに送信しますが、これは間違っています。私は何かを逃しましたか?何か案が?前もって感謝します。

値が間違っているこの URL に送信されています:

http://localhost/MyFolder/views/maintenance/RegionAdd.html?triggerActivity=region&triggerAction=add&regionDesc=test&area=test222 

それ以外の:

http://localhost/MyFolder/model/maintenance/maintenance_process.php?triggerActivity=region&triggerAction=add&regionDesc=test&area=test222 

以下のスクリプトを参照してください。

JS: (RegionAdd.html にあります)

$(document).bind("pageinit", function(){
    $("#submit-region").click(function(){
        //var regionDesc = $("#regionDesc").val();
        //console.log(regionDesc);
        var formData = $("#ajaxForm").serialize();
        $.ajax({
             type: "GET",
             url: "../../model/maintenance_process.php",
             cache: false,
             data: formData,
             success: onSuccess
        });
            //e.preventDefault();
    });
});

HTML5: (RegionAdd.html にあります)

<body>
    <div data-role="page">
        <form id='ajaxForm'>
            <div data-role="header">
                <h1>Add Region</h1>
                <button type='submit' data-theme="a" data-icon="check" data-mini="true" id="submit-region">Save</button>
            </div><!-- /header -->

            <div data-role="content">
                <div class="content-primary">
                    <input type="hidden" name="triggerActivity" id="triggerActivity" value="region"  />
                    <input type="hidden" name="triggerAction" id="triggerAction" value="add"  />
                    <ul data-role="listview">
                        <li data-role="fieldcontain">
                            <label for="regionDesc">Region</label>
                            <input type="text" name="regionDesc" id="regionDesc" value=""  />
                        </li>
                        <li data-role="fieldcontain">
                            <label for="area">Area</label>
                            <input type="text" name="area" id="area" value=""  />
                        </li>
                    </ul>
                    <h4 id="message"></h4>
                </div>
            </div><!-- /content -->
        </form>
    </div><!-- /page -->

4

1 に答える 1

0

バインディングにもかかわらず、フォームがデフォルトの方法で送信されているようです。

あなたはそのようなことを試すことができます:

$("form.ajaxForm").live("submit", handleForm);

そして handleForm 関数で ajax 呼び出しを実装します。

于 2013-03-27T10:57:11.180 に答える