javascript和jquery比较中学习
获取input的值:
document.getElementById(
"id"
).value
;这里查的是input的name属性
$('input').val();
设置input的值:
document.getElementsByName(
"template"
).value=
"hello world"
;这里查的是input的name属性
document.getElementsByTagName(
"input"
).value=
"hello world"
;这里查的是input的标签如<p><a>等等
$('input').val('hello world');
判断某个html元素属性是否存在
if(typeof($('#id').attr("ck-no"))=="undefined"){ //不存在该属性 }
判断是否存在某个类(hasClass)
<form role="form" name="editForm" action=" ">
获取name属性为editForm的form点击事件
document.editForm.onsubmit=function(){...}
检查某个radio或者checkbox是否选中
if ($("#quanxian").get(0).checked) { alert(1111); } if($('#quanxian').is(':checked')) { alert(1111); } if ($('#quanxian').attr('checked')) { alert(1111); }
跳出循环:
jquery中: return true 跳出当前循环(js是continue),return false 跳出所有循环(js是break)
动态调用函数:
functionName=_tar.attr('eventpreg'); if(typeof(window[functionName]) === "function") { var aa=eval(functionName + '('+textval+')'); }
如某个input的eventpreg自定义属性值为gettime则他调用的函数为
function gettime(){ //do some.... }
回调函数:
一个同步(阻塞)中使用回调的例子,目的是在func1代码执行完成后执行func2。
var func1=function(callback){ //do something. (callback && typeof(callback) === "function") && callback(); } func1(func2); var func2=function(){ }
带参数
function test(e,callback){ var data=e*10; //callback(data) (callback && typeof(callback) === "function") && callback(data); } test(1,function(val){ console.log(val) });
function test2(e,options){ var options=options||{}; var pirce=options.price; var num=options.num; var data=price*num; if(typeof options.fundemo!= 'undefined' && options.fundemoinstanceof Function){ options.fundemo(data); } } test2(element,{ price:200, num:4, fundemo:function(data){ console.log(data) } })
//获取name为parentType的值 document.editForm