我一个页面要做一个表格一列的排序,打开页面时需要一个默认的箭头,然后点击更改。一个a标签是<a href="#" onclick="orderby('LONGITUDE')"><img id="image" title="降序" alt="降序" src="images/common/down.GIF"/></a>然后这个orderby执行的一段js为 
function orderby(ordername)
{
var image = document.getElementById('image');

if(image.alt=='降序'){
image.alt='升序';
image.title='升序';
image.src='images/common/up.GIF';
document.forms[0].action= "cwSectorAction.do?action=list&ORDERBY="+ordername+"&ORDERSC=ASC";
}else if(image.alt=='升序'){
image.alt='降序';
image.title='降序';
image.src='images/common/down.GIF';
document.forms[0].action= "cwSectorAction.do?action=list&ORDERBY="+ordername+"&ORDERSC=DESC";
}
   document.forms[0].submit();
}

但是每当点击了一下,由于a标签默认值的存在,总是先变动一下image,然后再次变成默认的down.GIF ,应该如何做

解决方案 »

  1.   

    “由于a标签默认值的存在,总是先变动一下image,然后再次变成默认的down.GIF”
    听不太懂   
    你默认认为就是降序的对吧  变动image是啥意思? 
      

  2.   

    就是开始默认是降序的,然后点箭头,升序,js阶段把图片改成升序的箭头了,但是由于a的image的src是写好的<a href="#" onclick="orderby('LONGITUDE')"><img id="image" title="降序" alt="降序" src="images/common/down.GIF"/></a>,于是就变成升序一下,然后又变成降序的箭头了
      

  3.   

    $('img').attr('alt','值')
    $('img').attr('src','值')
      

  4.   

    就是开始默认是降序的,然后点箭头,升序,js阶段把图片改成升序的箭头了,但是由于a的image的src是写好的<a href="#" onclick="orderby('LONGITUDE')"><img id="image" title="降序" alt="降序" src="images/common/down.GIF"/></a>,于是就变成升序一下,然后又变成降序的箭头了
    你最后提交了表单啊?!!!
    document.forms[0].submit();这不就刷新页面了,刷新了页面你页面的展现都是默认的啊。。你如果想根据参数改变具体的默认值,需要对GET参数“ORDERBY”进行处理,JS或者后台处理都行,然后根据处理的结果改变默认“升序”还是默认“降序”。
      

  5.   

    就是开始默认是降序的,然后点箭头,升序,js阶段把图片改成升序的箭头了,但是由于a的image的src是写好的<a href="#" onclick="orderby('LONGITUDE')"><img id="image" title="降序" alt="降序" src="images/common/down.GIF"/></a>,于是就变成升序一下,然后又变成降序的箭头了
    你最后提交了表单啊?!!!
    document.forms[0].submit();这不就刷新页面了,刷新了页面你页面的展现都是默认的啊。。你如果想根据参数改变具体的默认值,需要对GET参数“ORDERBY”进行处理,JS或者后台处理都行,然后根据处理的结果改变默认“升序”还是默认“降序”。
    看来较好的办法只能ajax刷新了,不刷新表头的排序的部分
      

  6.   

    就是开始默认是降序的,然后点箭头,升序,js阶段把图片改成升序的箭头了,但是由于a的image的src是写好的<a href="#" onclick="orderby('LONGITUDE')"><img id="image" title="降序" alt="降序" src="images/common/down.GIF"/></a>,于是就变成升序一下,然后又变成降序的箭头了
    你最后提交了表单啊?!!!
    document.forms[0].submit();这不就刷新页面了,刷新了页面你页面的展现都是默认的啊。。你如果想根据参数改变具体的默认值,需要对GET参数“ORDERBY”进行处理,JS或者后台处理都行,然后根据处理的结果改变默认“升序”还是默认“降序”。
    看来较好的办法只能ajax刷新了,不刷新表头的排序的部分
    根据GET参数处理也可以啊
    1.后台处理,在前台JS打印一个变量,根据变量值处理默认
    2.前台处理,载入页面时JS分析当前URL,根据GET参数值处理默认