1.點擊事件參數為this
一般<a>標簽中會使用href和onclick兩種方式來進行進行頁面跳轉或執行動作,但是小編一般都會使用onclick來進行執行Ajax函數進行跳轉,並同時使用onclick="xxxxxx(this)"來傳遞動態參數:例子如下
JSP代碼如下:
<a href="javascript:void(0);" onclick="xxxx(this)" userId=${userId}>${userName}></a>
Js代碼如下:
function xxxx(obj) {
var thisObj=${obj};
var userId=thsiObj.attr("userId");
alert(userId);
}
一般會將href寫為“javascript:void(0)” 而不是“#”,因為可以防止不必要的頁面跳動;
而this指的就是a標簽這個對象
2.一個點擊事件綁定多個函數,用分號隔開,還可以定義變量,變量可以用於函數中;函數參數可以是json對象
onclick="initRowView({btnObj:this});var row = $('#sys_row').val();showViewZxPage({pk_id:$('#fk_yw_id_' + row).val(),djlx:$('#djlx_' + row).val(),sys_sjbj:$('#sys_sjbj_' + row).val(), tabindex:'01'})"/>
3.三目運算:!param當param沒值時為true
//異常報告查看
function showViewYcHdbg(param) {
<!-- &&等價於&& -->
param = !param ? {} : param; //!param ,表示param為空為null為undefined才為true;一句話!param當param沒值時為true
if (!param.pk_id && initRowView(param) == false) {
alert("暫無異常核對報告!");
return;
}
4.//當一個變量可能有幾個不同的數據來源時,可以采用||判斷
//$("#pk_id").val() ,取得是list-bean中name為pk_id的code值
param.pk_id = param.pk_id || $("#pk_id").val();
5.XML有5個轉義符: < >& " '
< |
< |
小於號 |
> |
> |
大於號 |
& |
& |
和 |
' |
’ |
單引號 |
" |
" |
雙引號 |
6.頁面跳轉
window.location.href="http://www.jb51.net"; //在同當前窗口中打開窗口
window.open("http://www.jb51.net"); //在另外新建窗口中打開窗口
window.history.back(-1); 返回
7.JS中的!=、== 、!==、===的用法和區別。其實就是一句話,==比較字面值,===還比較字面值和類型
var num = 1;
var str = '1';
var test = 1;
test == num //true 相同類型 相同值
test === num //true 相同類型 相同值
test !== num //false test與num類型相同,其值也相同, 非運算肯定是false
num == str //true 把str轉換為數字,檢查其是否相等。
num != str //false == 的 非運算
num === str //false 類型不同,直接返回false
num !== str //true num 與 str類型不同 意味着其兩者不等 非運算自然是true啦
8.ajax請求
doAjaxMgr({method:"op_check_bg", model_:model ,pkid: pkid },
function(obj) {
if("false"==obj.data.flag){
bcheck = false;
}
msg = obj.data.msg;
},false
);
if(bcheck == false){
alert(msg);
}
return bcheck ;
}
這里的ajax中的method:"op_check_bg",對應mgr_ajax.xml中的act,執行了shjzCheckSfzManager類的checkBgRecord方法
<form name="form" act="op_check_bg" manager="shjzCheckSfzManager" command="checkBgRecord"></form>
對應的spring配置文件
<bean id="shjzCheckSfzManager" class="jap.shjz.manager.ShjzCheckSfzManager" scope="prototype" />
checkBgRecord(ServiceData sdata)中的方法
finally {
String responeMessage = "{success:'true', pkid:'', message:'ok', data:{msg:'" + msg + "',flag:'" + flag + "'}}";
//這個就是ajax請求的回調函數的結果集obj
sdata.setResponseBody(responeMessage);
}