0

我有一个页面,有一个链接,如果用户点击链接,会出现一个新的选择标签,离开那个选择,会有一个删除链接,如果用户点击它,选择标签会消失。

我的问题是当我点击创建一个新的选择然后点击删除它时,它并没有被删除,它只是被隐藏了,我不希望提交后因为我检查是否设置了新的选择,所以我得到了真正的因为它只是隐藏而不是删除,请问如何解决

html代码

<div class="container" id="addCell">
    <form method="POST" action="<?php echo URL; ?>Cell/addCell">
        <ul>
            <li>
                <p>
                    <label>Name</label>
                    <input type="text" name="name"class="longInput1"/>
                <p>
                <p>
                    <label>City</label>
                    <select id="countrySelector" name="city">
                    </select>
                </p>
            </li>
            <li>
                <p>
                    <label>Inserted cells</label>
                    <a href="#" class="smallLink" id="acaclink">new</a>
                </p>
            </li>
            <li>
                <input type="submit" class="button1" value="save"/>
            </li>
        </ul>
    </form>
</div>

数据库代码

public function addCell() {
        $cellName = $_POST['name'];
        $cityName = $_POST['city'];
        $this->model->addCell($cellName, $cityName);
        if (isset($_POST['acSelect'])) {
            $cells = $_POST['acSelect'];
            $cellID = $this->model->getCellID($cellName);
            $this->model->insertIntersectionCells($cellID, $cells);
        }
        include_once 'Successful.php';
        $s = new Successful();
        $s->index("you inserted your cell");
    }

$jquery代码#

$("#addCell").ready(function(){
    $("#addCell").on('click',"#acaclink",function(){
        var me = this;
        $.getJSON("http://localhost/Mar7ba/Cell/getAllCells/TRUE",function(data){
            var options = '';
            options+="<option>select cell</option>";
            for(var i=0;i<data.length;i++){
                options += "<option>"+data[i]+"</option>";
            }
            $(me).closest('li').append('<p>\n\
            <label>Select Cell</label>\n\
            <select name="acSelect[]">\n\
             '+options+'\n\
</select>\n\
<a href="#" class="removeA">delete</a>\n\
</p>');
        });
    });
});
$("#addCell").ready(function(){
    $("#addCell").on('click',".removeA",function (){
        $(this).closest('p').hide();
    });
});

我希望我能解释我的问题因为我的英语不好

4

1 回答 1

3

你可以使用remove()方法:

$("#addCell").ready(function(){
    $("#addCell").on('click',".removeA",function (){
        $(this).closest('p').remove();
    });
});
于 2012-05-18T01:24:27.993 回答