-1

ロード関数内でこのフォームデータをシリアル化する方法。ラジオ値のみをシリアル化します。値の変更をクリックして「保存」ボタンを押すと、ajaxはラジオに対してのみ機能します...問題は何ですか?

Javascript

$(document).ready(function() {

$("#pard_configure_a").click(function() {

        $("#pard_admin").load('../pard_admin/view/configure.php', function() {




            $(":submit").click(function(event) {
        event.preventDefault();


        var data = $("#pard_site_configuration").serialize();
$("#hhh").html(data);
        $.ajax({

            url: "../controller/configure.controller.php",
            type: "POST",
            data:data,

            success: function(responce) {
                //$("#res").html(responce);

            }
        });



    });





});
});


}); 

HTML

<div id="pard_configure">
<p>
<form  id="pard_site_configuration" method="post">
 <fieldset>
<legend >Site Configuration</legend>
<!-- Site Settings-->
<div id="pard_site_settings">
<label class="pard_site_settings">Site Settings</label>
<div class="input-prepend">
<span class="add-on">Site Title</span>
<input class="span6" id="prependedInput" type="text" >
</div>
<br/>
<div id="pard_site_offline_radio" class="input-prepend">
<span class="add-on">Site Offline</span>

<label id="radio_1" class="radio">

<span class="add-on">ON</span>

<input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked>
</label>
<label id="radio_2" class="radio">
<span class="add-on">OFF</span>
<input type="radio" name="optionsRadios" id="optionsRadios2" value="option2">

</label>
</div>
<div class="input-prepend">
<span class="add-on">Admin Email</span>
<input class="span3" id="prependedInput" type="text" placeholder="example@domain.com">
</div>
<div class="input-prepend">
<span class="add-on">Meta Description</span>
<br/>
<textarea rows="3"></textarea>
</div>
<div class="input-prepend">
<span class="add-on">Meta Keywords</span>
<br/>
<textarea rows="3"></textarea>
</div>
<div class="input-prepend">
<span class="add-on">Copyright</span>
<br/>
<textarea rows="3"></textarea>
</div>
</div><!-- Site Settings end-->
<!-- Database Settings-->
<div id="pard_database_settings">
<label class="pard_database_settings">Database Settings</label>
<div class="input-prepend">
<span class="add-on">Host</span>
<input class="span2" id="prependedInput" type="text" placeholder="localhost">
</div>
<div class="input-prepend">
<span class="add-on">Database Name</span>
<input class="span2" id="prependedInput" type="text" placeholder="database">
</div>
<div class="input-prepend">
<span class="add-on">Database Username</span>
<input class="span2" id="prependedInput" type="text" placeholder="Username">
</div>
<div class="input-prepend">
<span class="add-on">Database Password</span>
<input class="span2" id="prependedInput" type="text" placeholder="Password">
</div>
</div><!-- Database Settings end-->
<div id="pard_admin_form_button">
<input id="pard_site_configuration_submit" class="btn btn-small btn-primary" type="submit" value="Save"/>
<input class="btn btn-small" type="submit" value="Close" /></div>
</fieldset></form>
</p><div id="hhh"></div></div>

id="hhh" で結果をシリアライズする

optionsRadios=option1

:シリアル化されたデータを表示する一時的な場所として id="hhh" を設定します

4

1 に答える 1

1

すべてのフォーム入力に name 属性があることを確認してください。

<input name="someName" class="span6" id="prependedInput" type="text" >

属性があるため、コードはラジオ ボタンに対して機能しnameます。を使用して.serialize()いるため、name 属性を持たない要素は無視されます。

于 2013-04-13T18:28:14.997 に答える