Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 添加/删除不提供值的选择框_Php_Javascript_Jquery_Html_Codeigniter - Fatal编程技术网

Php 添加/删除不提供值的选择框

Php 添加/删除不提供值的选择框,php,javascript,jquery,html,codeigniter,Php,Javascript,Jquery,Html,Codeigniter,(问题在这篇文章的底部) 你好,我正在关注这个 我总共制作了3个框,1个框包含所有值,2个框用于分隔值 如图所示: 这是我的Jquery: <script type="text/javascript"> $(document).ready(function() { $("#and").click(function() { $("#totalselect option:selected").each(function() {

(问题在这篇文章的底部)

你好,我正在关注这个

我总共制作了3个框,1个框包含所有值,2个框用于分隔值

如图所示:

这是我的Jquery:

<script type="text/javascript">
        $(document).ready(function() {
        $("#and").click(function() {
            $("#totalselect option:selected").each(function() {
            $("#select-and").append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>");
            $(this).remove();
            });
        });
        $("#removeand").click(function() {
            $("#select-and option:selected").each(function() {
            $("#totalselect").append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>");
            $(this).remove();
            });
        });
        $("#or").click(function() {
            $("#totalselect option:selected").each(function() {
            $("#select-or").append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>");
            $(this).remove();
            });
        });
        $("#removeor").click(function() {
            $("#select-or option:selected").each(function() {
            $("#totalselect").append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>");
            $(this).remove();
            });
        });
        });
    </script>

$(文档).ready(函数(){
$(“#和”)。单击(函数(){

$(“#totalselect选项:选中”)。每个(函数(){ $(“#选择并”).append(“+$(this.text()+”); $(this.remove(); }); }); $(“#删除并”)。单击(函数(){ $(“#select and option:selected”)。每个(函数(){ $(“#totalselect”).append(“+$(this.text()+”); $(this.remove(); }); }); $(“#或”)。单击(函数(){
$(“#totalselect选项:选中”)。每个(函数(){ $(“#选择或”).append(“+$(this.text()+”); $(this.remove(); }); }); $(“#移除”)。单击(函数(){ $(“#选择或选项:已选择”)。每个(函数(){ $(“#totalselect”).append(“+$(this.text()+”); $(this.remove(); }); }); });
这是我的HTML:

<div id="mass_options">
        <a href="JavaScript:void(0);" id="and">And</a>
        <a href="JavaScript:void(0);" id="or">Or</a>
        <select name="totalselect[]" id="totalselect" multiple size="5">
            <?php foreach ($reasons as $r) { ?>
                <option value="reason_<?php echo $r['reason_id'] ?>">Reason: <?php echo $r['reason'] ?></option>
            <?php } ?>
            <?php foreach ($options5 as $key => $value) { ?>
                <option value="status_<?php echo $key ?>">Session Status: <?php echo $value ?></option>
            <?php } ?>
            <?php foreach ($info as $key => $value) { ?>
                <option value="action_<?php echo $key ?>">Action: <?php echo $value ?></option>
            <?php } ?>
        </select>
        </div>

        <select name="and" id="select-and" multiple size="5" class="selectnew">
        </select>
        <select name="or" id="select-or" multiple size="5" class="selectnew">
        </select>
        <br>
        <br>
        <a href="JavaScript:void(0);" id="removeand">Remove And</a>
        <a href="JavaScript:void(0);" id="removeor">Remove Or</a>


在本机表单提交中,您必须“突出显示”您的选项。您知道,只有选定的选项才会在邮件中发送。在发送数据之前,您可以使用jQuery选择它们:

$("form *:submit").click(function() { /* choose a better selector for submit button */
    $("#select-and options, #select-or options").attr("selected", true);
    $(this).parents("form:first").submit();
});
没有“自动选择”的另一种选择是使用AJAX发送帖子。通过这种方式,您可以准备发送数据

…或将jQuery编辑为:

<script type="text/javascript">
    $(document).ready(function() {
        $("#and").click(function() {
            $("#totalselect option:selected").appendTo("#select-and");
        });
        $("#or").click(function() {
            $("#totalselect option:selected").appendTo("#select-or");
        });
        $("#removeand").click(function() {
            $("#select-and option:selected")
                .removeAttr("selected")
                .appendTo("#totalselect");
        });
        $("#removeor").click(function() {
            $("#select-or option:selected")
                .removeAttr("selected")
                .appendTo("#totalselect");
        });
    });
    </script>

$(文档).ready(函数(){
$(“#和”)。单击(函数(){

$(“#全选选项:已选”)。附加到(“#全选和”); }); $(“#或”)。单击(函数(){
$(“#全选选项:已选”)。附加到(“#全选或”); }); $(“#删除并”)。单击(函数(){ $(“#选择并选项:已选择”) .removeAttr(“选定”) .appendTo(“#totalselect”); }); $(“#移除”)。单击(函数(){ $(“#选择或选项:已选择”) .removeAttr(“选定”) .appendTo(“#totalselect”); }); });
那不是,那是。有一点不同,请显示PHP脚本处理/发送后浏览器看到的实际HTML。我使用CodeIgniter,因此在我的示例中,我查询数据库中的所有原因、状态和操作,并对返回的值进行处理。这是我的整个html部分。你称之为“php脚本”的结果就是我上面展示的屏幕截图。我认为当我使用HTML标记时,它是HTML,我只是嵌入了php foreach循环,所以我不必手动编写60多个值。然后,如果数据库中的值发生变化,我将不得不改变HTML选项x的次数。这就是为什么我使用php来完成所有繁重的工作,从数据库中动态添加所需的值。Dude,如果代码中包含动态php代码,我们就无法轻松测试代码,因为我们缺少数据和它周围的框架。不过,您应该能够在浏览器中执行“查看页面源代码”,并将其复制并粘贴到某个位置,然后创建一个示例来演示您的问题。很抱歉,我没有想到这一点。是的,我已经选择了它们。。。看看我的Jquery中的“#and”和“#”或“我不是Jquery大师,但我认为这些行意味着我正在选择这些值。您只使用value属性附加选项元素!所选属性丢失!totalselect选项:selectedMy选项:selected是否丢失?我只是试着让你回答,但我仍然没有得到任何东西发布到下一页。它显示在我的Jquery中大约有4或5行,选项:selected在那里。