从选择框中选择值后,Json值为PHP

时间:2017-06-08 17:19:06

标签: php json

在我提交表单之前,如何从选择框中获取所选值?

另外,我如何协助php变量(可能使用JSON或Jquery)?

如果我的选择框有值: 一个, B, C

我如何获得所选值?

这是我的cakephp表单字段:

<?php 

    echo $this->Form->input('Product.fruits', 
                                array('label'=>'Fruits',  
                                        'type' => 'select', 
                                        'empty'=>'- select one -', 
                                        'options' => $fruits, 
                                        'data-webroot' => $this->webroot)
                            );

?>

这是我的ajax:

$(function(){

        $(document).on('change', "select#Productfruits", function()
        {
            var url = '<?php echo Router::url(array('controller' => 'Fruits', 'action' => 'getFruitsFamilyAjax'));?>';

            var dados = {
                Product.fruits: $(this).val()
            };

            $.ajax({

                url: url,
                method: 'POST',
                data: dados,
                dataType: 'json',

                beforeSend: function( xhr ) 
                {
                    $.blockUI({
                        message: '<h2>wait</h2>'
                    });
                },
                complete: function () 
                {
                    $.unblockUI();
                },
                success: function ($response, a, b) 
                {
                    if(b.status == 200) 
                    {
                        var $optionsModel = $("#Productfruits").html($("<option />").val('').text('- select -'));

                        if($response)
                        {
                            $optionsModel.prop("disabled", false);

                            $.each($response, function(idfruit, value)
                            {
                                var $opt = new Option(value, idfruit);

                                $optionsModel.append($opt);
                            });
                        }
                    }
                    else 
                    {
                        alert($response);
                    }
                },

            });
        });
}

0 个答案:

没有答案