Javascript Symfony2 Ajax调用以显示特定条件下的消息

Javascript Symfony2 Ajax调用以显示特定条件下的消息,javascript,php,jquery,ajax,symfony,Javascript,Php,Jquery,Ajax,Symfony,我是javascript和ajax的初学者,我只是不知道在某些情况下如何显示消息 假设用户可以增加或减少他想要购买的产品的数量。我已经做到了(不是说这很容易)。但是如果产品缺货,他就不能再增加数量了。我如何在信息中显示这一点。例如,如果用户试图增加数量,但产品缺货,我想在同一个ajax调用中显示下面的消息 这是控制器: public function addQuantityAction( Request $request ) { $response = new JsonResponse(

我是javascript和ajax的初学者,我只是不知道在某些情况下如何显示消息

假设用户可以增加或减少他想要购买的产品的数量。我已经做到了(不是说这很容易)。但是如果产品缺货,他就不能再增加数量了。我如何在信息中显示这一点。例如,如果用户试图增加数量,但产品缺货,我想在同一个ajax调用中显示下面的消息

这是控制器:

public function addQuantityAction( Request $request ) {
    $response = new JsonResponse();
    $requestData = $request->request->all();
    $productid     = $requestData['product'];
    $quantity = $requestData['quantity'];
    /** logic*/
    $em = $this->getDoctrine()->getManager();
    $product = $em->getRepository('MpShopBundle:Product')->find($productid);
    $qtyAvailable = $product->getStockAvailable();
    $session = $this->getRequest()->getSession();
    $cart = $session->get('cart', array());
    if ( $qtyAvailable > $cart[ $productid ] ) {
        $cart[ $productid ] = $cart[ $productid ] + 1;
        $qtyAvailable = $qtyAvailable - 1;
        $response->setData(array('success'=>true,'message'=>'Qunatity increased','amount'  => $cart[ $productid ]));
         $session->set('cart', $cart);
    } else {
        $response->setData(array('success'=>false,'message'=>'Out of stock'));
    }
    return $response;
}
Ajax:

$(document).ready(function () {
    $(document).on('click', '.add', function (e) {
    $this = $(this);   
    $.ajax({
        type: 'POST',
        url: 'add',
        dataType: 'JSON',
        data: {product: $this.parent('.input-append').find('input').data('id'),quantity: $this.parent('.input-append').find('input').val()},
        success: function (data) {      
          if(data.success == false){
           alert('error')
          }else{
            $('.test').load(" .test");
            $('.sidebar').load(" .sidebar");
            $('.top').load(" .top");
           }
        }
    });
还有树枝:

<div class="input-append">

   <input class="span1" style="max-width:34px" placeholder="{{ key }}" value="{{ item }}" id="appendedInputButtons" size="16" type="text" data-id="{{ key }}"/>
   <a href="javascript:void(0)" class="remove btn"><i class="icon-minus"></i></a>
   <a href="javascript:void(0)" class="add btn"><i class="icon-plus"></i></a>                   
   <button class="btn btn-danger" type="button"><a href="{{ path('cart_remove', {'id': key}) }}"><i class="icon-remove icon-white" style="color:white"></i></a></button>

    <p> display message here </p>

                        </div>

在此处显示消息


您还可以在操作的成功或错误状态下添加类depands

阿贾克斯

$(文档).ready(函数(){
$(文档).on('click','add',函数(e){
$this=$(this);
$.ajax({
键入:“POST”,
url:'添加',
数据类型:“JSON”,
数据:{product:$this.parent('.input append').find('input').data('id'),quantity:$this.parent('.input append').find('input').val()},
成功:函数(数据){
if(data.success==false){
警报('错误')
}否则{
如果(data.message!=“未定义”){
$('#ajax_响应--message').html(data.message)
}
$('.test').load(“.test”);
$('.sidebar').load(“.sidebar”);
$('.top').load(“.top”);
}
}
});
小枝

在此处显示消息

$(document).ready(function () {
    $(document).on('click', '.add', function (e) {
    $this = $(this);   
    $.ajax({
        type: 'POST',
        url: 'add',
        dataType: 'JSON',
        data: {product: $this.parent('.input-append').find('input').data('id'),quantity: $this.parent('.input-append').find('input').val()},
        success: function (data) {      
          if(data.success == false){
           alert('error')
          }else{
            if(data.message != 'undefined') {
                $('#ajax_response--message').html(data.message)
            }
            $('.test').load(" .test");
            $('.sidebar').load(" .sidebar");
            $('.top').load(" .top");
           }
        }
    });

<div class="input-append">
    <p id="ajax_response--message"> display message here </p>

                        </div>