之前遇到的一些题目,在这写下来,方便查看
生成菜单树
<script>
var arr = [
{name:'学习',id: '0',parentId:null},
{name:'看书',id: '1',parentId:'0'},
{name:'做题',id: '2',parentId:'0'},
{name:'苏菲的世界',id: '3',parentId:'1'},
{name:'高数',id: '4',parentId:'2'},
{name:'英语',id: '5',parentId:'2'}
];
var firstMenu = "<ul>",
len = arr.length;
function tree(arr){
for(let i=0;i<len;i++){
if(arr[i].parentId == null){
firstMenu += "<li>"+arr[i].name;
second(arr, arr[i]);
}
}
firstMenu += "</li></ul>";
$(".tree").append($(firstMenu));
}
function second(arr, father){
let isFirst = true,
sec = " ";
for(let i=0;i<len;i++){
if(arr[i].parentId == father.id){
if(sec == " "){
sec = "<ul>"
firstMenu += sec;
};
sec = "<li>"+arr[i].name;
firstMenu += sec;
second(arr, arr[i]);
}
}
if(sec != " ") firstMenu+="</ul></li>";
}
$(function(){ tree(arr); });
</script>
序列化菜单
<script>
function serialize(form){
var parts=[],
field=null,
i;
for(i=0;i<form.elements.length;i++){
field=form.elements[i];
switch(field.type){
case "submit":
case "button":
case "reset":
break;
case "radio":
default:
if(field.name.length){
parts.push(encodeURIComponent(field.name)+"="+encodeURIComponent(field.value));
}
}
}
return parts;
}
</script>
想要得到“?”后某个参数的值,可以写代码
<script>
function GetQueryString(name){
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null){
return decodeURIComponent(r[2]);
}else{
return null;
}
}
document.write("name = "+ GetQueryString("name")+"<br />");
document.write("age ="+ GetQueryString("age"));
</script>