Php Symfony2 Ajax发送选项选定值

Php Symfony2 Ajax发送选项选定值,php,ajax,symfony,Php,Ajax,Symfony,当我将脚本发送到控制器时,我遇到一个问题。选择的值选项为null Jquery代码是: (当用户选择状态时,运行脚本 $('.status_select').on({ change: function(e) { e.preventDefault(); var $href1 = $(this).attr('id'); $('<div>&l

当我将脚本发送到控制器时,我遇到一个问题。选择的值选项为null

Jquery代码是: (当用户选择状态时,运行脚本

            $('.status_select').on({
            change: function(e) {

                e.preventDefault();
                var $href1 = $(this).attr('id');


                $('<div></div>').load($href1+' form', function(){

                    var $form1 = $(this).children('form');
                    var $cb1 = $form1.find('select[name="marcin_adminbundle_updatezamtype[status]"]');

                    $cb1.prop('value');

                    var $url1 = $form1.attr('action');
                    var $data1 = $form1.serialize();

                    $.ajax({
                        url: $url1,
                        data: $data1,
                        method: 'post',
                        dataType: 'json',
                        cache: false,
                        success: function(obj) {
                            var $tic = $('#task-complete-'+obj.id+' .status_select');
                            if(obj.complete){


                            }
                            else {

                            $('#wynik'+obj.id).load(document.URL + ' #wynik'+obj.id);
                            $('#wynik_b'+obj.id).load(document.URL + ' #wynik_b'+obj.id);
                            }
                        },
                        complete: function() {
                            console.log('complete!');

                        },
                        error: function(err) {
                            console.log(err);
                        }
                    });
                });
            }
        });
        });
$('.status_select')。打开({
更改:功能(e){
e、 预防默认值();
var$href1=$(this.attr('id');
$('').load($href1+'form',function(){
var$form1=$(this.children('form');
var$cb1=$form1.find('select[name=“marcin\u adminbundle\u updatezamtype[status]”);
$cb1.道具(“价值”);
var$url1=$form1.attr('action');
var$data1=$form1.serialize();
$.ajax({
url:$url1,
数据:$data1,
方法:“post”,
数据类型:“json”,
cache:false,
成功:功能(obj){
变量$tic=$(“#任务完成-”+obj.id+“.status_select”);
如果(目标完成){
}
否则{
$('#wynik'+obj.id).load(document.URL+'#wynik'+obj.id);
$('#wynik_b'+obj.id).load(document.URL+'#wynik_b'+obj.id);
}
},
完成:函数(){
console.log('complete!');
},
错误:函数(err){
控制台日志(err);
}
});
});
}
});
});
请帮忙 我希望在选择optopn时收到一个值

HTML:

{{article.id}
{{article.jakie_zam}}
我们的机器人是如何实现的?机器人是如何实现的?机器人是如何实现的?机器人是如何实现的?机器人是如何实现的
控制台日志:

panel:829 Objectabort: (a)always: ()complete: ()done: ()error: ()fail: ()getAllResponseHeaders: ()getResponseHeader: (a)overrideMimeType: (a)pipe: ()progress: ()promise: (a)readyState: 4responseText: "<!DOCTYPE html>↵<html>↵    <head>↵        <meta charset="UTF-8" />↵        <meta http-equiv="X-UA-Compatible" content="IE=edge">↵        <title>Administracja GM</title>↵        <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">↵                <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">↵         <!-- Ionicons -->↵        <link rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">↵        <link rel="stylesheet" type="text/css" href="/bundles/marcinadmin/bootstrap/css/bootstrap.min.css" />↵        <link rel="stylesheet" type="text/css" href="/bundles/marcinadmin/dist/css/AdminLTE.min.css" />↵        <link rel="stylesheet" type="text/css" href="/bundles/marcinadmin/dist/css/skins/skin-blue.min.css" />↵        <link rel="stylesheet" type="text/css" href="/bundles/marcinadmin/plugins/datatables/dataTables.bootstrap.css" />↵        ↵         <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->↵        <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->↵        <!--[if lt IE 9]>↵            <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>↵            <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>↵        <![endif]-->↵        ↵        <link rel="icon" type="image/x-icon" href="/favicon.ico" />↵    </head>↵    <body class="hold-transition skin-blue sidebar-mini">↵    <div class="wrapper">↵↵      <!-- Main Header -->↵      <header class="main-header">↵↵        <!-- Logo -->↵        <a href="/app_dev.php/panel" class="logo">↵          <!-- mini logo for sidebar mini 50x50 pixels -->↵          <span class="logo-mini"><b>GM</b></span>↵          <!-- logo for regular state and mobile devices -->↵          <span class="logo-lg">Grupa<b>MAGNUM</b></span>↵        </a>↵↵        <!-- Header Navbar -->↵        <nav class="navbar navbar-static-top" role="navigation">↵          <!-- Sidebar toggle button-->↵          <a href="#" class="sidebar-toggle" data-toggle="offcanvas" role="button">↵            <span class="sr-only">Toggle navigation</span>↵          </a>↵          <!-- Navbar Right Menu -->↵          <div class="navbar-custom-menu">↵            <ul class="nav navbar-nav">↵              <!-- Messages: style can be found in dropdown.less-->↵              <!-- /.messages-menu -->↵↵              <!-- Notifications Menu -->↵              <!-- Tasks Menu -->↵              <!-- User Account Menu -->↵              <li class="dropdown user user-menu">↵                <!-- Menu Toggle Button -->↵                <a href="#" class="dropdown-toggle" data-toggle="dropdown">↵                  <!-- The user image in the navbar-->↵                  <img src="https://sklep.grupamagnum.eu//upload/GM_fb.jpg" class="user-image" alt="User Image">↵                  <!-- hidden-xs hides the username on small devices so only the image appears. -->↵                  <span class="hidden-xs">Admin GM</span>↵                </a>↵                <ul class="dropdown-menu">↵                  <!-- The user image in the menu -->↵                  <li class="user-header">↵                    <img src="https://sklep.grupamagnum.eu//upload/GM_fb.jpg" class="img-circle" alt="User Image">↵                    <p>↵                      Administrator GrupaMAGNUM↵                      <small>Rok założenia 1996</small>↵                    </p>↵                  </li>↵                  <!-- Menu Body ↵                  <li class="user-body">↵                    <div class="col-xs-4 text-center">↵                      <a href="#">Followers</a>↵                    </div>↵                    <div class="col-xs-4 text-center">↵                      <a href="#">Sales</a>↵                    </div>↵                    <div class="col-xs-4 text-center">↵                      <a href="#">Friends</a>↵                    </div>↵                  </li>-->↵                  <!-- Menu Footer-->↵                  <li class="user-footer">↵                   <!-- <div class="pull-left">↵                      <a href="#" class="btn btn-default btn-flat">Profile</a>↵                    </div>-->↵                    <div class="pull-right">↵                      <a href="/app_dev.php/logout" class="btn btn-default btn-flat">Wyloguj</a>↵                    </div>↵                  </li>↵                </ul>↵              </li>↵              <!-- Control Sidebar Toggle Button -->↵              <li>↵                <a href="#" data-toggle="control-sidebar"><i class="fa fa-gears"></i></a>↵              </li>↵            </ul>↵          </div>↵        </nav>↵      </header>↵      <!-- Left side column. contains the logo and sidebar -->↵      <aside class="main-sidebar">↵↵        <!-- sidebar: style can be found in sidebar.less -->↵        <section class="sidebar">↵↵          <!-- Sidebar user panel (optional) -->↵          <…avascript" src="/bundles/marcinadmin/plugins/jQuery/jQuery-2.1.4.min.js"></script>↵        <script type="text/javascript" src="/bundles/marcinadmin/bootstrap/js/bootstrap.min.js"></script>↵        <script type="text/javascript" src="/bundles/marcinadmin/dist/js/app.min.js"></script>↵        <!-- DataTables -->↵        <script type="text/javascript" src="/bundles/marcinadmin/plugins/datatables/jquery.dataTables.min.js"></script>↵        <script type="text/javascript" src="/bundles/marcinadmin/plugins/datatables/dataTables.bootstrap.min.js"></script>↵        ↵    <script>↵        $(function(){↵            $('.ajax-task-complete').on({↵                click: function(e) {↵                    e.preventDefault();↵                    var $href = $(this).attr('href');↵                    ↵                    $('<div></div>').load($href+' form', function(){↵                        var $form = $(this).children('form');↵                        var $cb = $form.find('input[type="checkbox"]');↵                        ↵                        $cb.prop('checked', !$cb.prop('checked'));↵                        ↵                        var $cb1 = $form.find('select[name="marcin_adminbundle_updatezamype[status]"]');↵                        ↵                        $cb1.prop('selected', !$cb1.prop('selected'));↵                        ↵                        var $url = $form.attr('action');↵                        var $data = $form.serialize();↵                        ↵                        $.ajax({↵                            url: $url,↵                            data: $data,↵                            method: 'post',↵                            dataType: 'json',↵                            cache: false,↵                            success: function(obj) {↵                                var $tic = $('#task-complete-'+obj.id+' .ajax-task-complete');↵                                if(obj.complete){↵                                    //$tic.text('X');↵                                    ↵                                }↵                                else {↵                                    //$tic.text('0');↵                                $('#wynik'+obj.id).load(document.URL + ' #wynik'+obj.id);↵                                $('#wynik_b'+obj.id).load(document.URL + ' #wynik_b'+obj.id);↵                                }↵                            },↵                            complete: function() {↵                                console.log('complete!');↵↵                            },↵                            error: function(err) {↵                                console.log(err);↵                            }↵                        });↵                    });↵                }↵            });↵            ↵            ↵            $('.status_select').on({↵                change: function(e) {↵           //$(document).on('change', '.status_select', function() {↵          //  $('select[name*="status_select"]').prop('selected', true).change(function(e){↵                    e.preventDefault();↵                    var $href = $(this).attr('id');↵                   ↵                    ↵                    $('<div></div>').load($href+' form', function(){↵                        //var $form = $(this).children('form');↵                        var $form =  $(this).closest('form');;↵                        var $cb = $form.find('select[name="marcin_adminbundle_updatezamtype[status]"]');↵                        ↵                        $cb.prop('selected');↵                        ↵                        var $url = $form.attr('action');↵                        var $data = $form.serialize();↵                        ↵                        $.ajax({↵                            url: $url,↵                            data: $data,↵                            method: 'post',↵                            dataType: 'json',↵                            cache: false,↵                            success: function(obj) {↵                                var $tic = $('#task-complete-'+obj.id+' .status_select');↵                                if(obj.complete){↵                                    //$tic.text('X');↵                                    ↵                                }↵                                else {↵                                    //$tic.text('0');↵                                $('#wynik'+obj.id).load(document.URL + ' #wynik'+obj.id);↵                                $('#wynik_b'+obj.id).load(document.URL + ' #wynik_b'+obj.id);↵                                }↵                            },↵                            complete: function() {↵                                console.log('complete!');↵↵                            },↵                            error: function(err) {↵                                console.log(err);↵                            }↵                        });↵                    });↵                }↵            });↵            });↵        ↵        </script>↵    </body>↵</html>↵"setRequestHeader: (a,b)state: ()status: 200statusCode: (a)statusText: "OK"success: ()then: ()__proto__: Object

panel:829 Objectabort:(a)始终:()完成:()完成:()错误:()失败:()getAllResponseHeaders:()getResponseHeader:()覆盖类型:(a)管道:()进度:()承诺:(a)readyState:4responseText::↵↵    ↵        ↵        ↵        行政总经理↵        ↵                ↵         ↵        ↵        ↵        ↵        ↵        ↵        ↵         ↵        ↵        ↵        ↵        ↵    ↵    ↵    ↵↵      ↵      ↵↵        ↵        ↵↵        ↵        ↵          ↵          ↵          ↵          ↵            
    ↵ ↵ ↵↵ ↵ ↵ ↵
  • ↵ ↵ ↵
      ↵ ↵
    • ↵ ↵ ↵ 格鲁帕马格南管理员↵ Rok założenia 1996↵

      ↵ ↵ ↵
    • ↵ ↵ ↵ ↵ ↵
    ↵ ↵ <李>↵ ↵
↵ ↵ ↵ ↵ ↵ ↵↵ ↵ ↵↵ ↵ 我认为
$form1
没有定义

您应该通过
$(this.closest('form');
获得它,假设您的选择框实际上位于html表单标记之间

您应该避免对JS变量使用“$”,而将其保留在PHP部分

我不确定首次加载功能的相关性:

 $('<div></div>').load($href1+' form', function(){});
$('').load($href1+'form',function(){});

您能提供HTML部分吗?谢谢您的快速回复。同样的…发送null.This$('').load($href1+'form',function(){});->从update.HTML.twigHeum加载表单。您能控制台.log($form1)吗告诉我呈现了什么?你能用HTML部分更新你的问题以便清楚地理解你的DOM吗?谢谢。我有点困惑。由于你的编辑,我给出了所有的前代码。我认为
$('')有问题。加载(
。您应该加载到通过其类名或ID找到的特定元素中。编辑代码并添加$('#divID')。加载(将所有表单加载到表中。Status
  • 此值不应为空。
您能告诉我$form1是否是正确的对象吗?Console.log($form1)
 $('<div></div>').load($href1+' form', function(){});