11/07/2010, 13:49
|
| | Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 14 años, 5 meses Puntos: 0 | |
mostrar item seleccionado de un jquery combobox autocomplete [SOLUCIONADO] Buenas,
estoy usando un combobox de jqueryUI con el autocomplete. Pero no me muestra el elemento que se encuentra seleccionado por defecto en el html. Sabes si es posible que se muestre cuando uso el autocomplete?
este es el código:
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
$("#ctl00_ContentPlaceHolder1_ddl_Provincia").comb obox();
$("#ctl00_ContentPlaceHolder1_ddl_Localidad").comb obox();
$("#ctl00_ContentPlaceHolder1_ddl_Provincia option").eq(0).attr("selected", "selected");
$("#ctl00_ContentPlaceHolder1_ddl_Localidad option").eq(0).attr("selected", "selected");
});
(function($) {
$.widget("ui.combobox", {
_create: function() {
var self = this;
var select = this.element.hide();
var input = $("<input>")
.insertAfter(select)
.autocomplete({
source: function(request, response) {
var matcher = new RegExp(request.term, "i");
response(select.children("option").map(function() {
var text = $(this).text();
if (this.value && (!request.term || matcher.test(text)))
return {
id: this.value,
label: text.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + $.ui.autocomplete.escapeRegex(request.term) + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>"),
value: text
};
}));
},
delay: 0,
change: function(event, ui) {
if (!ui.item) {
// remove invalid value, as it didn't match anything
$(this).val("");
return false;
}
select.val(ui.item.id);
self._trigger("selected", event, {
item: select.find("[value='" + ui.item.id + "']")
});
},
select: function(event, ui) {
comboboxProvinciaChange(ui.item.id);
},
minLength: 0
})
.addClass("ui-widget ui-widget-content ui-corner-left");
$("<button> </button>")
.attr("tabIndex", -1)
.attr("title", "Muestra todos los elementos")
.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;
}
// pass empty string as value to search for, displaying all results
input.autocomplete("search", "");
input.focus();
});
}
});
})(jQuery);
...
gracias,
saludos!
Última edición por subte815; 12/07/2010 a las 12:04
Razón: solucionado
|