javascript - Foreach 无法在 php 和 Jquery 中工作

标签 javascript php jquery html

我正在尝试在 php 和 jquery 中执行 foreach 循环以进行多重选择,但我所得到的只是数组。

html

<select multiple="multiple" class="select tagz" required>

php

if(!empty($_POST['tagz'])){
            $tag = $_POST['tagz']);

            foreach($tag as $tagz){
            echo $tagz;
            }

        }else{
            echo "Please select tags";
        }

Jquery

function serealizeSelects (select)
        {
            var array = [];
            select.each(function(){ array.push($(this).val()) });
            return array;
        }
        var tagz = serealizeSelects($(".tagz"));
$.post('upload.php', {tagz:tagz, title:title, category:category, description:description, price:price}, function(data){

            $('#confirm').html(data);

        });

请告诉我我做错了什么

最佳答案

你正在做select.each(function(){ array.push($(this).val()) }); 但是 select 变量只包含 select 元素,each 没有任何意义。您需要在选项中使用 each。因此请更改您的选择器。

           var tagz = serealizeSelects($(".tagz option"));

或者,如果您不想更改选择器,只需使用 find 来查找选择器中的所有选项

           select.find('option').each(function(){ array.push($(this).val()) })

当然,我不知道你在哪里定义其他变量。如果你也有其他问题,只需向我展示你的整个 javascript 代码,以便我可以为你提供更多帮助。

关于javascript - Foreach 无法在 php 和 Jquery 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37187475/

相关文章:

php - 使用 csv_from_result 在 CSV 导出中返回字符串而不是数据库条目

php - MYSQL INSERT INTO 不插入数据或抛出错误

javascript - 如何在用户滚动到页面末尾时显示一个 div?

javascript - 使用 ES6 或 TypeScript 导入多个 'export' 的更好方法

javascript - 有一个更好吗? $(文档) 或 $ ('document' )

javascript - 在 angularJS 中使用 ng-style 而不是 style 时出错

javascript - 按下句号键时执行 JavaScript 函数

php - 当 svg 文件嵌入图像时,如何使用 Imagemagick 将 svg 图像转换为 png 图像?

javascript - 使用jquery根据选择选项显示2个div?

javascript - 模糊背景图像,而不是文本