JavaScript零散知识(一)

1.JavaScript获取复选框的值

<div class="select_authority">
     <input type="radio" id="checkbox_user" name="authority" class="checkbox_user" value="1" checked>
     <label for="checkbox_user">普通用户</label>
     <input type="radio" id="checkbox_adm" name="authority" class="checkbox_user" value="2">
     <label for="checkbox_adm">管理员</label>
     <input type="radio" id="checkbox_sup" name="authority" class="checkbox_user" value="3">
     <label for="checkbox_sup">超级用户</label>
</div>

 JavaScript获取值的方法:

 

var authArry= document.getElementsByName("authority"); //  获取checkbox对象,是一个数组对象
  alert(authArry);
  var auth= ""; //用于存储已选择的选项值
  for (var i = 0; i < authArry.length; ++i) { //遍历数组中的对象,查看有没有被选择的值
    if (authArry[i].checked) {  //checked代表被选择
    auth= authArry[i].value;  //把被选择的数据复制给auth变量
    }
  }
  if (auth== "") {  //auth为空代表没有选择
	alert("plece choose one!!");
  } else {
	alert(auth);
  }

 JavaScript函数里面调用jQuery对象需要加引号

例如:

 

(1)JavaScript使用$.ajax({});时需要引入jQuery的文件,否则会报错或者没有反应

(2)ajax发送数据的时候使用formdata格式时,需要在Ajax里面加入

contentType: false,
processData: false,

否则也会报错或者出现程序没反应

(3)formdata传输一个数组,例子:

 

 1 formadata.append('tags','111');
 2 formadata.append('tags','222');
 3 
 4 $.ajax({
 5     url:'/dataItem/test1.action',//第一个‘/’必须加上,否则会出现路径出错
 6     type:'post',
 7     data:formdata,
 8     contentType: false,
 9     processData: false,
10     success:function () {
11           alert("success");
12 
13      },
14 });

 

 1  @RequestMapping(value = "test1",produces={"application/json;charset=utf-8"},method = RequestMethod.POST )
 2     @ResponseBody
 3     public String test1(@RequestParam(value = "tags",required = false)String[] tags,
 4                         HttpServletRequest request){
 5         System.out.println(tags[0]);
 6         Map<String,String> ret = new HashMap<String,String>();
 7         ret.put("type","ok");
 8         JSONObject jsonObject = JSONObject.fromObject(ret);
 9         String result = jsonObject.toString();
10         return result;
11     }

 JavaScript读取xml文件报错load not a function

 原因:有的浏览器不支持load这个函数

解决办法,下面这个代码基本上兼容主流的浏览器

loadXML = function(xmlFile){
    var xmlDoc=null;
    var agent = navigator.userAgent.toLowerCase();

    //判断浏览器的类型
    //支持IE浏览器
    if(agent.indexOf("msie") > 0){
        alert("22");
        var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
        for(var i=0;i<xmlDomVersions.length;i++){
            try{
                xmlDoc = new ActiveXObject(xmlDomVersions[i]);
                break;
            }catch(e){
            }
        }
    }
    //支持firefox浏览器
    else if(agent.indexOf("firefox") > 0){
        try{
            xmlDoc = document.implementation.createDocument('','',null);
        }catch(e){
        }
    } else{//谷歌浏览器
        alert("111111111");
        var oXmlHttp = new XMLHttpRequest() ;
        oXmlHttp.open( "GET", xmlFile, false ) ;
        oXmlHttp.send(null) ;
        return oXmlHttp.responseXML;
    }
    if(xmlDoc!=null){
        xmlDoc.async = false;
        xmlDoc.load(xmlFile);
    }
    return xmlDoc;
}

function parseXML(){

    var xmlDoc = loadXML("C:/Users/hejia/Desktop/new/test.xml");

    name=xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
}

 

 

 

 

posted @ 2019-07-04 10:28  我是happy唐啊  阅读(270)  评论(0编辑  收藏  举报