JqGrid kullanarak sunucu tarafı doğrulama yapmak nasıl?

0 Cevap php

Ben sitelerin bir listesini görüntülemek için jqGrid kullanıyorum ve ben bir site eklendiğinde veya düzenlendiğinde bazı sunucu tarafı doğrulama yapmak istiyorum. (Yerine inline daha Formu düzenleme. Doğrulama ben girmeyeceğim çeşitli nedenlerle sunucu tarafında olması gerekir.)

Ben iyi yolu beforeSubmit olayı tetiklenir bir ajax isteği üzerinden verileri kontrol etmek olacağını düşündüm. Ancak bu sadece ben kılavuzunda mevcut bir satır düzenlerken olduğumda iş gibi görünüyor - Ben yeni bir satır eklediğinizde fonksiyon denir.

Ben yanlış yerde benim beforeSubmit var mı?

Yardımlarınız için teşekkürler.

    $("#sites-grid").jqGrid({
        url:'/json/sites',
        datatype: "json",
        mtype: 'GET',         
        colNames:['Code', 'Name', 'Area', 'Cluster', 'Date Live', 'Status', 'Lat', 'Lng'],
        colModel :[ 
          {name:'code', index:'code', width:80, align:'left', editable:true}, 
          {name:'name', index:'name', width:250, align:'left', editrules:{required:true}, editable:true}, 
          {name:'area', index:'area', width:60, align:'left', editable:true}, 
          {name:'cluster_id', index:'cluster_id', width:80, align:'right', editrules:{required:true, integer:true}, editable:true, edittype:"select", editoptions:{value:"<?php echo $cluster_options; ?>"}}, 
          {name:'estimated_live_date', index:'estimated_live_date', width:120, align:'left', editable:true, editrules:{required:true}, edittype:"select", editoptions:{value:"<?php echo $this->month_options; ?>"}}, 
          {name:'status', index:'status', width:80, align:'left', editable:true, edittype:"select", editoptions:{value:"Live:Live;Plan:Plan;"}}, 
          {name:'lat', index:'lat', width:140, align:'right', editrules:{required:true}, editable:true}, 
          {name:'lng', index:'lng', width:140, align:'right', editrules:{required:true}, editable:true}, 
        ],
        height: '300',
        pager: '#pager-sites',
        rowNum:30,
        rowList:[10,30,90],
        sortname: 'cluster_id',
        sortorder: 'desc',
        viewrecords: true,
        multiselect: false,
        caption: 'Sites',
        editurl: '/json/sites'
     });

    $("#sites-grid").jqGrid('navGrid','#pager-sites',{edit:true,add:true,del:true, beforeSubmit : function(postdata, formid) { 
        $.ajax({
            url      : 'json/validate-site/', 
            data     : postdata,
            dataType : 'json',
            type     : 'post',
            success  : function(data) { 
                alert(data.message);
                return[data.result, data.message];
            }
        });
    }});

0 Cevap