0

登録ページで動的テーブルを作成しようとしていますが、プラグインの使用をあきらめて、この追加機能を使用するつもりです。ユーザーが特定のオプションを選択した場合にのみテーブルを表示したい。これが私のhtmlです:

<div id="Reg_num2" style="display:none;" >
    <button id="AddLine">Add Line</button>
    <table border="1px" id="table">
        <tr>
            <td>First Name</td>
            <td>Last Name</td>
            <td>Phone</td>
            <td>Email</td>
            <td>Ethnicity</td>
        </tr>
        <tr>
            <td><input type=text /></td>
            <td><input type=text /></td>
            <td><input type=text /></td>
            <td><input type=text /></td>
            <td><input type=text /></td>
        </tr>
    </table>​
</div>

そして、これが私のjqueryコードです:

$(document).ready(function(e) {
$("input[name= 'Reg_num_r']").change( function () {
        if($(this).val()==1) {
            $("#Reg_num2").hide();
        } else {
            $("#Reg_num2").show();
        }
    });

    $("#table").on("click", "button", function() {
       $(this).closest("tr").remove(); 
    });​

    $("#AddLine").click(function () {
        var row = "<tr><td><input type=text /></td><td><input type=text /></td><td><input type=text /></td><td>                   <input type=text /></td><td><input type=text /></td><td><button>X</button></td></tr>";
        $("#table").append(row);
    });
});

私が抱えている問題は2つあります。

  1. ユーザーが適切なラジオボタンを選択すると、テーブルは表示されません。コードの何が問題になっていますか?
  2. 追加ボタンをクリックすると、代わりにページ全体が送信されますが、どうすれば修正できますか?
4

2 に答える 2

1

問題は

if($(this).val()==1) {

する必要があります

if($(this).val()=="1") {

2番目の回答者

$("#submitButton").submit(function(){
//do things
return false;
});
于 2012-09-16T21:24:03.373 に答える
1

「2)追加ボタンをクリックすると、代わりにページ全体が送信されますが、どうすれば修正できますか?」

属性が指定され<button>ていない要素はデフォルトであるため、フォーム内にある場合はフォームを送信します。に変更します。typetype="submit"<button type="button">

ラジオボタンの問題についてはよくわかりませんが、使用する傾向があり.clickます.change。質問を更新して、関連するhtmlを表示してください。

于 2012-09-16T21:27:14.970 に答える