CodingForums.com

CodingForums.com (http://www.codingforums.com/index.php)
-   JavaScript programming (http://www.codingforums.com/forumdisplay.php?f=2)
-   -   Reordering text input values (http://www.codingforums.com/showthread.php?t=203046)

maxetime 08-23-2010 07:07 PM

Reordering text input values
 
Hi,

I'm currently programming a menu editing script and I'm trying to reorder value of text input on change.

What I'm trying to do is when I change the value of a text box it reorders the others.

EX
Start 1 2 3 4 5
Change 3->1
End 2 3 1 4 5

Here is what I've manage to do, it works only when the number is bigger.

Javascript function
Code:

function changeOrder(current)
{
        var num_name = current.name.split("_",2);
        var id = num_name[0]+"_"+num_name[1]+"_number";
        var maxorder = document.getElementById(id).value;
        var currentmax = current.name.substr((current.name.length-1),1)
        if(currentmax <= maxorder && current.value > 0)
        {
                var start = (currentmax > current.value ? 1 : currentmax);
                for(var i=start;i<maxorder;i++)
                {
                        var k = parseInt(i)+1;
                        x = document.getElementsByName(num_name[0]+"_"+num_name[1]+"_order_"+k);
                        x[0].value = i;
                        x[0].name = x[0].name.substr(0,(x[0].name.length-1))+i;
                }
                current.name = current.name.substr(0,(current.name.length-1))+current.value;
        }
}

HTML input
Code:

<input type="text" style="width: 20px;" onchange="changeOrder(this);" value="1" name="other_title_order_1">
Thanks for any advices you may have :)

Maxetime


All times are GMT +1. The time now is 12:40 AM.

Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.