我的php页面上有一个下拉列表,其中填充了MySQL数据库中的数据,我想按字母顺序对其进行排序,但我收到此错误:“未捕获的SyntaxError:意外的令牌ILLEGAL”。
我做错了什么?
HTML / PHP
//Somewhere on my form...
echo '<select name=\"dropdownlist\" onclick=\"sortlist(this.value)\">';
Javascript功能:
function sortlist(formtag)
{
var cl = document.getElementById(formtag);
var clTexts = new Array();
for(i = 2; i < cl.length; i++)
{
clTexts[i-2] =
cl.options[i].text.toUpperCase() + "," +
cl.options[i].text + "," +
cl.options[i].value;
}
clTexts.sort();
for(i = 2; i < cl.length; i++)
{
var parts = clTexts[i-2].split(',');
cl.options[i].text = parts[1];
cl.options[i].value = parts[2];
}
}
答案 0 :(得分:3)
如果字符串在单引号内,则无需转义双引号。另外,在<select>
标记中使用“onchange”。试试这个:
echo '<select name="dropdownlist" onchange="sortlist(this.value)">';
javascript代码中的错误:var cl = document.getElementById(formtag);
可以包含单个元素,因此cl.length
不高于1.