Manupilar valores de un select list
Intento pasar valores de un select list multiple a otro, encontre un codigo que lo hace genial.
Pero trae un detalle que al pasar los valores lo que se encunetra dentro del <option value=''>TEXTO</option> osea 'TEXTO' . Al pasarlo al otro select ese TEXTO me lo coloca como si fuera el VALUE. Y en el VALUE del origen tengo un ID.
No se como modificar la primera funcion addOption(), ¿qué creo que ahi es donde hay que modificar algun parametro pero no se mucho de javascript me podrias apoyar?
function addOption(theSel, theText, theValue)
{
var newOpt = new Option(theText, theValue);
var selLength = theSel.length;
theSel.options[selLength] = newOpt;
}
function deleteOption(theSel, theIndex)
{
var selLength = theSel.length;
if(selLength>0)
{
theSel.options[theIndex] = null;
}
}
function moveOptions(theSelFrom, theSelTo)
{
var selLength = theSelFrom.length;
var selectedText = new Array();
var selectedValues = new Array();
var selectedCount = 0;
var i;
// Find the selected Options in reverse order
// and delete them from the 'from' Select.
for(i=selLength-1; i>=0; i--)
{
if(theSelFrom.options.selected)
{
selectedText[selectedCount] = theSelFrom.options.text;
selectedValues[selectedCount] = theSelFrom.options.value;
deleteOption(theSelFrom, i);
selectedCount++;
}
}
// Add the selected text/values in reverse order.
// This will add the Options to the 'to' Select
// in the same order as they were in the 'from' Select.
for(i=selectedCount-1; i>=0; i--)
{
addOption(theSelTo, selectedText, selectedValues);
}
if(NS4) history.go(0);
}
Pero trae un detalle que al pasar los valores lo que se encunetra dentro del <option value=''>TEXTO</option> osea 'TEXTO' . Al pasarlo al otro select ese TEXTO me lo coloca como si fuera el VALUE. Y en el VALUE del origen tengo un ID.
No se como modificar la primera funcion addOption(), ¿qué creo que ahi es donde hay que modificar algun parametro pero no se mucho de javascript me podrias apoyar?
function addOption(theSel, theText, theValue)
{
var newOpt = new Option(theText, theValue);
var selLength = theSel.length;
theSel.options[selLength] = newOpt;
}
function deleteOption(theSel, theIndex)
{
var selLength = theSel.length;
if(selLength>0)
{
theSel.options[theIndex] = null;
}
}
function moveOptions(theSelFrom, theSelTo)
{
var selLength = theSelFrom.length;
var selectedText = new Array();
var selectedValues = new Array();
var selectedCount = 0;
var i;
// Find the selected Options in reverse order
// and delete them from the 'from' Select.
for(i=selLength-1; i>=0; i--)
{
if(theSelFrom.options.selected)
{
selectedText[selectedCount] = theSelFrom.options.text;
selectedValues[selectedCount] = theSelFrom.options.value;
deleteOption(theSelFrom, i);
selectedCount++;
}
}
// Add the selected text/values in reverse order.
// This will add the Options to the 'to' Select
// in the same order as they were in the 'from' Select.
for(i=selectedCount-1; i>=0; i--)
{
addOption(theSelTo, selectedText, selectedValues);
}
if(NS4) history.go(0);
}
1 Respuesta
Respuesta de krlosnow
1