<SCRIPT LANGUAGE="JavaScript">
function setSequence()
{
var input = document.getElementById("div").getElementsByTagName("input");
var n=1;
for(var i=0;i<input.length ;i++ )
{
if(input[i].type=="checkbox")
{
if(input[i].checked)
{
if(input[i+1] && input[i+1].type=="text")
input[i+1].value=n;
n++;
}
else
{
if(input[i+1] && input[i+1].type=="text")
input[i+1].value="";
}
}
}
}
</SCRIPT>
<div id="div">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
<INPUT TYPE="checkbox" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" NAME="">
</div>如此?

解决方案 »

  1.   

    <SCRIPT LANGUAGE="JavaScript">
    function setSequence()
    {
     var input = document.getElementById("div").getElementsByTagName("input");
     var  n=1
     for(var i=0;i<input.length ;i+=2 )
      { 
          if(input[i].checked)
            { input[i+1].value=n;
               n++;}
       else
    {input[i+1].value=""}
      }
    }
    </SCRIPT>
    <div id="div">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    </div>
    效果 代码 同4楼!~
      

  2.   

    To  neo_yoho 和 wtcsy 能否帮我再改一下啊,
    我希望的效果是:按照选择的顺序排序,不是按照从左到右啊。
      

  3.   

    按照我的目的,我对neo_yoho 和 wtcsy的代码进行修改,
    我知道我搞得不对,请大家再帮帮我,我对javascript不熟啊,
    谢谢!
    <html>
    <head>
        <title>untitle</title>
    <SCRIPT LANGUAGE="JavaScript">
    function setSequence()
    {
        var input = document.getElementById("div").getElementsByTagName("input");
        var n=1;
    var chkId=this.id;
    var txtId=reText(chkId);
    var sn=document.getElementById(txtid).value;
        for(var i=0;i<input.length ;i++ )
        {
            if(input[i].type=="checkbox")
            {
                if(input[i].checked)
                {
                    if(input[i+1] && input[i+1].type=="text")
    {
    if(input[i+1].value>sn)
    {
    input[i+1].value=sn-1;
    }
    }
                }
                else
                {
                    if(input[i+1] && input[i+1].type=="text")
                        input[i+1].value="";
                }
            }
        }
    }
    function reText(chkid)
    {
    switch(chkid)
    {
    case "Chk1":
    return "txt1";
    break;
    case "Chk2":
    return "txt2";
    break;
    case "Chk3":
    return "txt3";
    break;
    case "Chk4":
    return "txt4";
    break;
    case "Chk5":
    return "txt5";
    break;
    case "Chk6":
    return "txt6";
    break;
    }
    }
    </SCRIPT>
    </head>
    <body>
    <div id="div">
    <INPUT TYPE="checkbox" id="Chk1" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt1" NAME="">
    <INPUT TYPE="checkbox" id="Chk2" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt2" NAME="">
    <INPUT TYPE="checkbox" id="Chk3" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt3" NAME="">
    <INPUT TYPE="checkbox" id="Chk4" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt4" NAME="">
    <INPUT TYPE="checkbox" id="Chk5" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt5" NAME="">
    <INPUT TYPE="checkbox" id="Chk6" NAME="" onclick="setSequence(this)"><INPUT TYPE="text" id="txt6" NAME="">
    </div>
    </body>
    </html>
      

  4.   

    To wtcsy 没有搞反的,因为第3行的比第2行的选择,所以第2行顺序号当然是在第3行的后面了To chinmo 不要写进数据库啊
      

  5.   

    To wtcsy 
    没有搞反的,因为第3行的比第2行的先选择,所以第2行的顺序号当然是在第3行的后面了 
      

  6.   

    <SCRIPT LANGUAGE="JavaScript">
     var  n=1
    function setSequence()
    {
    var input = document.getElementById("div").getElementsByTagName("input");
    var num=0
    if(event.srcElement.checked)
     {event.srcElement.nextSibling.value=n
     n++}
    else
    {
     n=n-1
     num=event.srcElement.nextSibling.value
     event.srcElement.nextSibling.value=""
     for(var i=1;i<input.length ;i+=2 )
     {
         if(input[i].value>num)
     {input[i].value=input[i].value-1
     break;} }
    }
    }
    </SCRIPT>
    <div id="div">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    </div>
    这样的效果吗?????
      

  7.   

    <SCRIPT LANGUAGE="JavaScript">
     var  n=1
    function setSequence()
    {
    var input = document.getElementById("div").getElementsByTagName("input");
    var num=0
    if(event.srcElement.checked)
     {event.srcElement.nextSibling.value=n
     n++}
    else
    {
     n=n-1
     num=event.srcElement.nextSibling.value
     event.srcElement.nextSibling.value=""
     for(var i=1;i<input.length ;i++ )
     {
         if(input[i].value>num)
         {input[i].value=input[i].value-1
         } }
    }
    }
    </SCRIPT>
    <div id="div">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    <INPUT TYPE="checkbox" NAME="" onclick="setSequence()"><INPUT TYPE="text" NAME="">
    </div>是这个效果吧
      

  8.   

    event.srcElement.nextSibling.value这句话什么意思啊?
      

  9.   

    <SCRIPT LANGUAGE="JavaScript">
     var  n=1
    function setSequence(e)
    {
    var e=e||event;//为了兼容FF
    var input = document.getElementById("div").getElementsByTagName("input");
    var num=0;
    var src =e.srcElement||e.target;//为了兼容FF
    if(src.checked){
    src.nextSibling.value=n;  
     n++
     }
    else
    {
     n=n-1
     num=src.nextSibling.value;
     src.nextSibling.value="";
     for(var i=1;i<input.length ;i++ )
     {
          if(input[i].value>num)
         {input[i].value=input[i].value-1
         } }
    }
    }
    </SCRIPT><div id="div">
      <INPUT TYPE="checkbox" id="Chk1" onclick="setSequence(event)" value="1"><INPUT TYPE="text" id="txt1">
      <INPUT TYPE="checkbox" id="Chk2" onclick="setSequence(event)" value="2"><INPUT TYPE="text" id="txt2" NAME="">
      <INPUT TYPE="checkbox" id="Chk3" onclick="setSequence(event)" value="3"><INPUT TYPE="text" id="txt3" NAME="">
      <INPUT TYPE="checkbox" id="Chk4" onclick="setSequence(event)" value="4"><INPUT TYPE="text" id="txt4" NAME="">
      <INPUT TYPE="checkbox" id="Chk5" onclick="setSequence(event)" value="5"><INPUT TYPE="text" id="txt5" NAME="">
      <INPUT TYPE="checkbox" id="Chk6" onclick="setSequence(event)" value="6"><INPUT TYPE="text" id="txt6" NAME="">
    </div>这个就兼容了