Foros del Web » Programando para Internet » Jquery »

Problemas con jQuery

Estas en el tema de Problemas con jQuery en el foro de Jquery en Foros del Web. Hola que tal bueno tengo un problema: Lo que pasa es que tengo el siguiente codigo en mi pagina web Código PHP: < html xmlns = ...
  #1 (permalink)  
Antiguo 27/07/2011, 10:40
 
Fecha de Ingreso: mayo-2011
Mensajes: 55
Antigüedad: 13 años
Puntos: 1
Problemas con jQuery

Hola que tal bueno tengo un problema:

Lo que pasa es que tengo el siguiente codigo en mi pagina web

Código PHP:

<html xmlns="http://www.w3.org/1999/xhtml"><head>

<
body>
<
meta charset="utf-8">
    <
link type="text/css" href="css/vader/jquery-ui-1.8.14.custom.css" rel="stylesheet" />    
    <
script type="text/javascript" src="js/funciones.js"></script>
    <script type="text/javascript" src="js/jquery-1.5.1.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui-1.8.14.custom.min.js"></script>    
    <style>
    .ui-button { margin-left: -1px; }
    .ui-button-icon-only .ui-button-text { padding: 0.35em; } 
    .ui-autocomplete-input { margin: 0; padding: 0.48em 0 0.47em 0.45em; }
    </style>
    <script>
    (function( $ ) {
        $.widget( "ui.combobox", {
            _create: function() {
                var self = this,
                    select = this.element.hide(),
                    selected = select.children( ":selected" ),
                    value = selected.val() ? selected.text() : "";
                var input = this.input = $( "<input>" )
                    .insertAfter( select )
                    .val( value )
                    .autocomplete({
                        delay: 0,
                        minLength: 0,
                        source: function( request, response ) {
                            var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
                            response( select.children( "option" ).map(function() {
                                var text = $( this ).text();
                                if ( this.value && ( !request.term || matcher.test(text) ) )
                                    return {
                                        label: text.replace(
                                            new RegExp(
                                                "(?![^&;]+;)(?!<[^<>]*)(" +
                                                $.ui.autocomplete.escapeRegex(request.term) +
                                                ")(?![^<>]*>)(?![^&;]+;)", "gi"
                                            ), "<strong>$1</strong>" ),
                                        value: text,
                                        option: this
                                    };
                            }) );
                        },
                        select: function( event, ui ) {
                            ui.item.option.selected = true;
                            self._trigger( "selected", event, {
                                item: ui.item.option
                            });
                        },
                        change: function( event, ui ) {
                            if ( !ui.item ) {
                                var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
                                    valid = false;
                                select.children( "option" ).each(function() {
                                    if ( $( this ).text().match( matcher ) ) {
                                        this.selected = valid = true;
                                        return false;
                                    }
                                });
                                if ( !valid ) {
                                    // remove invalid value, as it didn't match anything
                                    $( this ).val( "" );
                                    select.val( "" );
                                    input.data( "autocomplete" ).term = "";
                                    return false;
                                }
                            }
                        }
                    })
                    .addClass( "ui-widget ui-widget-content ui-corner-left" );

                input.data( "autocomplete" )._renderItem = function( ul, item ) {
                    return $( "<li></li>" )
                        .data( "item.autocomplete", item )
                        .append( "<a>" + item.label + "</a>" )
                        .appendTo( ul );
                };

                this.button = $( "<button type='button'>&nbsp;</button>" )
                    .attr( "tabIndex", -1 )
                    .attr( "title", "Show All Items" )
                    .insertAfter( input )
                    .button({
                        icons: {
                            primary: "ui-icon-triangle-1-s"
                        },
                        text: false
                    })
                    .removeClass( "ui-corner-all" )
                    .addClass( "ui-corner-right ui-button-icon" )
                    .click(function() {
                        // close if already visible
                        if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
                            input.autocomplete( "close" );
                            return;
                        }

                        // work around a bug (likely same cause as #5265)
                        $( this ).blur();

                        // pass empty string as value to search for, displaying all results
                        input.autocomplete( "search", "" );
                        input.focus();
                    });
            },

            destroy: function() {
                this.input.remove();
                this.button.remove();
                this.element.show();
                $.Widget.prototype.destroy.call( this );
            }
        });
    })( jQuery );

    $(function() {
        $( "#combobox" ).combobox();
        $( "#toggle" ).click(function() {
            $( "#combobox" ).toggle();
        });
    });
    </script>
   
    
 <form name="form" method="post">
 <div class="demo">
    <select style="width:100px;" id="sel3" name="sel3" onChange="from(document.form.sel3.value,'sel3.2','cmbx1C2.php')">
    <option value="0" selected> </option>
    <option value="telefono">telefono</option>
    </select>
  
  
    <div class="ui-widget">
        <div id="sel3.2">
            
            
        </div>
    </div>
    </div>
    
    
  </form>


</body>
</html> 
se que es mucho codigo asi que les explicare tengo un select que cuando elijo algo en este caso telefono con el metodo onchange manda llamar a otro archivo php en donde me manda otro select y que me lo agrega en el div con el id sel3.2 que se muestra en el codigo de arriba justo abajo del div ui-widget a continuacion les muestro el codigo del otro select


Código PHP:

    <?php
        
require_once("conexion/conexion.php");
        
$id $_GET['id'];
        
$sql="SELECT DISTINCT ".$_GET['id']." FROM julio";
        
$res=mysql_query($sql,$con);
    
?>
            
       <select id="combobox">
       <option value"0" selected="selected"></option>
     <?php   
        
//echo "$id";
        
while ($reg=mysql_fetch_array($res))
        {
            echo
"<option value='$reg[$id]'>$reg[$id]</option>";
        }
    
?>
        </select>
como ven este nomas es un combo que se llena dependiendo de lo que traiga el combobox anterior agarra el id y me llena el combo lo que pasa es que cuando este combo se pasa al index(que es el primer codigo que mande) no hace nada el select osea no me aparecen los resultados en el autocomplete no se activa el boton ni nada e intentado todo de hecho pedir ayuda es ya mi ultima opcion alguien prodia decirme en que esto mal?


tengo el firebug y pues viendo el codigo si me manda el select lleno con los datos ue necesito pero el autocomplete no me funciona y cuando pongo manualmente la libreria de jquery con el firebug si sirve perfectamente el autocomplete

Etiquetas: ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:28.