JS数字排序问题
<script language="javascript">
function px()
{
var sz=new Array();
var sk=document.getElementById("sj").value;
sz=sk.split(","); //在文本框内输入数据,然后以逗号分割开来
//alert(sz[0]);
var len=sz.length;
for(var i=0;i<len-1;i++)
{
for(var j=i+1;j<len;j++)
{
if(sz[i]>sz[j])
{
var temp=sz[i];
sz[i]=sz[j];
sz[j]=temp;
}
}
}
document.getElementById("jg").innerHTML=sz;
}
</script>
<form name="form1">
<input type="text" id="sj">
<input type="button" name="btn" onclick="px()" value="排序">
<span id="jg"></span>
</form>
以上方法的排序不成功.文本框内输入1,24,36,5,19后,结果变成1,19,24,36,5
但是直接带入数据到数组里却能正确排序.
代码如下:
<script language="javascript">
function px()
{
var sz=new Array(1,24,36,5,19);
var sk=document.getElementById("sj").value;
//sz=sk.split(","); 在文本框内输入数据,然后以逗号分割开来
//alert(sz[0]);
var len=sz.length;
for(var i=0;i<len-1;i++)
{
for(var j=i+1;j<len;j++)
{
if(sz[i]>sz[j])
{
var temp=sz[i];
sz[i]=sz[j];
sz[j]=temp;
}
}
}
document.getElementById("jg").innerHTML=sz;
}
</script>
<form name="form1">
<input type="text" id="sj">
<input type="button" name="btn" onclick="px()" value="排序">
<span id="jg"></span>
</form>
还望各位指教讨论,谢谢!