繁体   English   中英

我如何运行此连击

[英]How I can run this combos

执行这些组合时出现问题,但发生的组合正常工作,但是当您开始选择每个项目时,仅在第一个组合中显示值,并希望其显示其所属位置。 这是代码:data_combo.php

<?php
header('Content-Type: text/html; charset=UTF-8'); 
include 'cnx_php.php';

mssql_select_db($database_obras, $link); 
$query_busqueda = "SELECT (CODIGO)CODIGO_SEGMENTO,SEGMENTO FROM SEGMENTOS ORDER BY CODIGO ASC"; 
$busqueda = mssql_query($query_busqueda, $link) or die(mssql_error()); 
$row_busqueda = mssql_fetch_assoc($busqueda); 
$totalRows_busqueda = mssql_num_rows($busqueda); 

$data = array();

if((empty($_POST['id1'])) and (empty($_POST['id2'])) and (empty($_POST['id3'])) and (empty($_POST['id4'])) and (empty($_POST['id5']))) { 

$id = -1; 

do {  //step 3 
    array_push($data,array( 
        "valor"        => $row_busqueda['CODIGO_SEGMENTO'], 
        "etiqueta"    => $row_busqueda['SEGMENTO'] 
    )); 
} while($row_busqueda = mssql_fetch_assoc($busqueda)); 

} 

if(!empty($_POST['id1'])) { 

mssql_select_db($database_obras, $link); 
$query_busqueda = "SELECT DISTINCT(CODIGO)CODIGO_SERVICIO,SERVICIO FROM SERVICIO WHERE CODIGO_SEGMENTO = '".$_POST['id1']."'"; 
$busqueda = mssql_query($query_busqueda, $link) or die(mssql_error()); 
$row_busqueda = mssql_fetch_assoc($busqueda); 
$totalRows_busqueda = mssql_num_rows($busqueda); 

do {  //step 3 
    array_push($data,array( 
        "valor"        => $row_busqueda['CODIGO_SERVICIO'], 
        "etiqueta"    => $row_busqueda['SERVICIO'] 
    )); 
} while($row_busqueda = mssql_fetch_assoc($busqueda)); 

} 

if(!empty($_POST['id2'])) { 

mssql_select_db($database_obras, $link); 
$query_busqueda = "SELECT DISTINCT * FROM `de_municipios`WHERE `CODIGO_SERVICIO` LIKE '".$_POST['id2']."'"; 
$busqueda = mssql_query($query_busqueda, $link) or die(mssql_error()); 
$row_busqueda = mssql_fetch_assoc($busqueda); 
$totalRows_busqueda = mssql_num_rows($busqueda); 

do {  //step 3 
    array_push($data,array( 
        "valor"        => $row_busqueda['codigomunicipio'], 
        "etiqueta"    => $row_busqueda['municipio'] 
    )); 
} while($row_busqueda = mssql_fetch_assoc($busqueda)); 

} 

if(!empty($_POST['id3'])) { 

mssql_select_db($database_obras, $link); 
$query_busqueda = "SELECT * FROM `de_parroquias` WHERE `codigomunicipio` LIKE '".$_POST['id3']."'"; 
$busqueda = mssql_query($query_busqueda, $link) or die(mssql_error()); 
$row_busqueda = mssql_fetch_assoc($busqueda); 
$totalRows_busqueda = mssql_num_rows($busqueda); 

do {  //step 3 
    array_push($data,array( 
        "valor"        => $row_busqueda['codigoparroquia'], 
        "etiqueta"    => $row_busqueda['parroquia'] 
    )); 
} while($row_busqueda = mssql_fetch_assoc($busqueda)); 

} 

echo json_encode(  //step 4 
    array( 
    "success"    => true, 
    "data"        => $data 
)); 

mssql_free_result($busqueda); 
?>

链接的combo.js

Ext.ns("com.quizzpot.tutorial");

com.quizzpot.tutorial.LinkedComboBoxTutorial = {
    init: function () {
        //code here
        var datos_select = new Ext.data.Store({
            autoLoad: true,
            proxy: new Ext.data.HttpProxy({
                url: 'data_combo.php',
                method: 'POST'
            }),
            reader: new Ext.data.JsonReader({
                root: 'data'
            },[
            {name: 'valor'},
            {name: 'etiqueta'}
            ])
        });

    var codigo_pais_fld = new Ext.form.ComboBox({
        mode: 'local',
        store: datos_select,
        displayField: 'etiqueta',
        valueField: 'valor',
        forceSelection: true,
        minChars: '1',
        fieldLabel: 'SEGMENTO',
        labelStyle: 'font-weight:bold;',
        typeAhead: true,
        hiddenName: 'codigo_pais_fld',
        triggerAction: 'all',
        emptyText: 'Seleccione País de la Obra...',
        selectOnFocus: true,
        forceSelection: false,
        id: 'codpais',
        name: 'codpais',
        editable: true,
        autoLoad: true,
        width: 200,
        allowBlank: false,
        selectOnFocus: true
    });

    var codigo_provincia_fld = new Ext.form.ComboBox({
        mode: 'local',
        store: datos_select,
        disabled: true,
        displayField: 'etiqueta',
        valueField: 'valor',
        fieldLabel: 'SERVICIO',
        typeAhead: true,
        hiddenName: 'codigo_provincia_fld',
        forceSelection: true,
        minChars: '1',
        triggerAction: 'all',
        emptyText: 'Seleccione Provincia...',
        selectOnFocus: true,
        forceSelection: false,
        labelStyle: 'font-weight:bold;',
        id: 'codprovincia',
        name: 'codprovincia',
        editable: true,
        autoLoad: true,
        width: 200,
        allowBlank: false,
        selectOnFocus: true
    });
    //combo 1
    codigo_pais_fld.on('select', function (cmb, record, index) {
        codigo_provincia_fld.enable();
        codigo_provincia_fld.clearValue();      
        datos_select.load({
            params: {
                id1: record.get('valor')
            }
        });
    }, this);

    var codigo_municipios_fld = new Ext.form.ComboBox({
        mode: 'local',
        store: datos_select,
        displayField: 'etiqueta',
        valueField: 'valor',
        fieldLabel: 'PROVEEDORES',
        disabled: 'true',
        forceSelection: true,
        minChars: '1',
        typeAhead: true,
        hiddenName: 'codigo_municipios_fld',
        triggerAction: 'all',
        labelStyle: 'font-weight:bold;',
        emptyText: 'Seleccione Municipio...',
        selectOnFocus: true,
        forceSelection: false,
        id: 'codmunicipio',
        name: 'codmunicipio',
        editable: true,
        autoLoad: true,
        width: 200,
        allowBlank: false,
        selectOnFocus: true
    });
    //combo 2
    codigo_provincia_fld.on('select', function (cmb, record, index) {
        codigo_municipios_fld.enable();
        codigo_municipios_fld.clearValue();     
        datos_select.load({
            params: {
                id2: record.get('valor')
            }
        });
    }, this);

    var codigo_parroquias_fld = new Ext.form.ComboBox({
        mode: 'local',
        store: datos_select,
        displayField: 'etiqueta',
        valueField: 'valor',
        fieldLabel: 'APLICATIVO',
        forceSelection: true,
        minChars: '1',
        typeAhead: true,
        hiddenName: 'codigo_parroquias_fld',
        labelStyle: 'font-weight:bold;',
        triggerAction: 'all',
        emptyText: 'Seleccione Parroquia...',
        selectOnFocus: true,
        forceSelection: false,
        disabled: 'true',
        id: 'codparroquia',
        name: 'codparroquia',
        editable: true,
        autoLoad: true,
        width: 200,
        allowBlank: false,
        selectOnFocus: true
    });     
    //combo 3
    codigo_municipios_fld.on('select', function (cmb, record, index) {
        codigo_parroquias_fld.enable();
        codigo_parroquias_fld.clearValue();     //MODIFICADO
        datos_select.load({
            params: {
                id3: record.get('valor')
            }
        });
    }, this);



    this.window = new Ext.Window({
        title: 'ComboBox',
        layout: 'form',
        width: 400,
        height: 250,
        bodyStyle: 'padding:5px;background-color:#fff',
        items: [codigo_pais_fld, codigo_provincia_fld, codigo_municipios_fld, codigo_parroquias_fld]
    });
    this.window.show();
}
}

Ext.onReady(com.quizzpot.tutorial.LinkedComboBoxTutorial.init, com.quizzpot.tutorial.LinkedComboBoxTutorial);

而且,对不起我的英语

好吧,在研究并做出必要的更改之后,我找到了解决方案,问题出在linked-cmb.js文件中,我共享代码来帮助某人:

Ext.BLANK_IMAGE_URL = '../../ext-3.4.0/resources/images/default/s.gif';
Ext.ns("com.quizzpot.tutorial");

com.quizzpot.tutorial.LinkedComboBoxTutorial = {

    getStore: function () {
        var store = new Ext.data.JsonStore({
            autoLoad: true,
            url: 'data_combo.php',
            method: 'POST',
            root: 'data',
            fields: ['valor', 'etiqueta']
        });
        return store;
    },

    init: function () {
        //code here
        this.datos_select = this.getStore();
        this.datos_select1 = this.getStore();
        this.datos_select2 = this.getStore();
        this.datos_select3 = this.getStore();

        var codigo_pais_fld = new Ext.form.ComboBox({
            mode: 'local',
            //disabled:true,
            store: this.datos_select,
            displayField: 'etiqueta',
            valueField: 'valor',
            forceSelection: true,
            minChars: '1',
            fieldLabel: 'Segmento',
            labelStyle: 'font-weight:bold;',
            typeAhead: true,
            hiddenName: 'codigo_pais_fld',
            triggerAction: 'all',
            emptyText: 'Seleccione Segmento...',
            selectOnFocus: true,
            forceSelection: false,
            id: 'codpais',
            name: 'codpais',
            editable: true,
            autoLoad: true,
            width: 200,
            allowBlank: false,
            selectOnFocus: true
        });

        var codigo_provincia_fld = new Ext.form.ComboBox({
            mode: 'local',
            store: this.datos_select1,
            disabled: true,
            displayField: 'etiqueta',
            valueField: 'valor',
            fieldLabel: 'Servicio',
            typeAhead: true,
            hiddenName: 'codigo_provincia_fld',
            forceSelection: true,
            minChars: '1',
            triggerAction: 'all',
            emptyText: 'Seleccione Servicio...',
            selectOnFocus: true,
            forceSelection: false,
            labelStyle: 'font-weight:bold;',
            id: 'codprovincia',
            name: 'codprovincia',
            editable: true,
            autoLoad: true,
            width: 200,
            allowBlank: false,
            selectOnFocus: true
        });

        codigo_pais_fld.on('select', function (cmb, record, index) {
            codigo_provincia_fld.enable();
            codigo_provincia_fld.clearValue();
            codigo_municipios_fld.clearValue();
            codigo_parroquias_fld.clearValue();
            this.datos_select1.load({
                params: {
                    id1: record.get('valor')
                }
            });
        }, this);

        var codigo_municipios_fld = new Ext.form.ComboBox({
            mode: 'local',
            store: this.datos_select2,
            displayField: 'etiqueta',
            valueField: 'valor',
            fieldLabel: 'Aplicativo',
            disabled: 'true',
            forceSelection: true,
            minChars: '1',
            typeAhead: true,
            hiddenName: 'codigo_municipios_fld',
            triggerAction: 'all',
            labelStyle: 'font-weight:bold;',
            emptyText: 'Seleccione Aplicativo...',
            selectOnFocus: true,
            forceSelection: false,
            id: 'codmunicipio',
            name: 'codmunicipio',
            editable: true,
            autoLoad: true,
            width: 200,
            allowBlank: false,
            selectOnFocus: true
        });

        codigo_provincia_fld.on('select', function (cmb, record, index) {
            codigo_municipios_fld.enable();
            codigo_municipios_fld.clearValue();
            this.datos_select2.load({
                params: {
                    id2: record.get('valor')
                }
            });
        }, this);

        var codigo_parroquias_fld = new Ext.form.ComboBox({
            mode: 'local',
            store: this.datos_select3,
            displayField: 'etiqueta',
            valueField: 'valor',
            fieldLabel: 'Requerimiento',
            forceSelection: true,
            minChars: '1',
            typeAhead: true,
            hiddenName: 'codigo_parroquias_fld',
            labelStyle: 'font-weight:bold;',
            triggerAction: 'all',
            emptyText: 'Seleccione Requerimiento...',
            selectOnFocus: true,
            forceSelection: false,
            disabled: 'true',
            id: 'codparroquia',
            name: 'codparroquia',
            editable: true,
            autoLoad: true,
            width: 300,
            allowBlank: false,
            selectOnFocus: true
        });

        codigo_municipios_fld.on('select', function (cmb, record, index) {
            codigo_parroquias_fld.enable();
            codigo_parroquias_fld.clearValue();
            this.datos_select3.load({
                params: {
                    id3: record.get('valor')
                }
            });
        }, this);

        this.window = new Ext.Window({
            title: 'ComboBox',
            layout: 'form',
            width: 500,
            height: 250,
            bodyStyle: 'padding:5px;background-color:#fff',
            items: [codigo_pais_fld, codigo_provincia_fld, codigo_municipios_fld, codigo_parroquias_fld]
        });
        this.window.show();
    }
}

Ext.onReady(com.quizzpot.tutorial.LinkedComboBoxTutorial.init, com.quizzpot.tutorial.LinkedComboBoxTutorial);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM