js函式之函式傳參
js拼接字串時,字串的事件引數需要傳物件或物件陣列的處理方法 有時候在js拼接字串時,需要傳遞物件或物件陣列,這時候直接將事件拼接在html達不到想要的效果,如 $(document).ready(function(){ var dd=[]; for(var i=0;i<3;i++){ var obj ={}; obj.a='i'+i; obj.b='j'+i; dd.push(obj); } var html="<a href='javascript:void(0);' onclick=\"fn_test("+dd+");\">aaaaa</a>"; $("#test").append(html); }); function fn_test(b){ for(var i=0;i<b.length;i++){ alert(b[i].a); } } dd引數為物件陣列,直接這樣做會物件引數會成為一個字串傳遞過去,而達不到預料的效果,我們可以換種思路:先把生成的html字串apend到頁面上,然後再給節點繫結事件. 解決辦法: $(document).ready(function(){ var dd=[]; for(var i=0;i<3;i++){ var obj ={}; obj.a='i'+i; obj.b='j'+i; dd.push(obj); } var html=$("<a href='javascript:void(0);'>aaaaa</a>"); $("#test").append(html); html.click(function(){ fn_test(dd); }); }); function fn_test(b){ for(var i=0;i<b.length;i++){ alert(b[i].a); } } 或者 $(document).ready(function(){ var dd=[]; for(var i=0;i<3;i++){ var obj ={}; obj.a='i'+i; obj.b='j'+i; dd.push(obj); } var html="<a id="testNode" href='javascript:void(0);'>aaaaa</a>"; $("#test").append(html); $("testNode").bind("click",function(){ fn_test(dd); }); }); function fn_test(b){ for(var i=0;i<b.length;i++){ alert(b[i].a); } } 這樣即達到想要的效果
相關推薦
js函式之函式傳參
js拼接字串時,字串的事件引數需要傳物件或物件陣列的處理方法 有時候在js拼接字串時,需要傳遞物件或物件陣列,這時候直接將事件拼接在html達不到想要的效果,如 $(document).ready(function(){ var dd=[]; for(var i
【python學習筆記】python函式定義和傳參方法說明
一、函式定義方式 函式定義用關鍵字def,其引數傳遞不用設定型別,也不用定義返回,然後在函式名稱後加上:號,這點和java很不一樣,相對來說更加簡單了;另外包含關係上用四個空格來標識,而非java的;號; 如下為一個範例,定義了一個函式用來生成任意上界的菲波那契數列: # -*- c
JS 語法之--函式,異常
1、函式 2、函式表示式 使用表示式定義函式,表示式中的函式名可以省略,如果這個函式名不省略,也只能用在此函式內部。 測試:匿名函式 + 函式表示式 1 // 匿名函式 2 const add = function (x, y) { 3 re
(十)函式的動態傳參,作用域
⼀. 函式引數--動態傳參 如果我們需要給⼀個函式傳參, ⽽引數⼜是不確定的. 或者我給⼀個函式傳很多引數, 我的形參就要寫很多, 很⿇煩, 怎麼辦呢. 我們可以考慮使⽤動態引數. 形參的第三種: 動態引數。 動態引數分成兩種: 動態接收位置
C++(筆記)容器(vector)作為函式引數如何傳參
一、大致以下型別 void 函式名( vector< int> obj ); void 函式名( vector< int>* pobj ); void
swap函式之函式傳值問題
在前面的部落格中,我有一篇“藉助字元大小轉換balabala”的博文。那篇文章我寫得很認真。但是後來,我和一個學長交流問題的時候,我發現自己的子函式寫的不符合規則。 所以,我又閉門造車了。。 時隔兩天,我來糾正自己的錯誤啦。 首先,函式呼叫時,涉及到值傳遞。實參經過子函式,計算出結果,並返回
python定義函式時的引數&呼叫函式時的傳參
一、定義函式: 1、位置引數:直接定義引數 2、預設引數(或者關鍵字引數):引數名 = "預設值" 3、位置引數必須在預設引數之前 二、呼叫函式: 1、按位置傳,直接寫引數的值 2、按關鍵字傳,關鍵字 = "值" 3、位置引數必須在關鍵字引數之前 4
Python函式定義及傳參方式
一、函式初識 1、定義: 將一組語句的集合通過一個名字(函式名)封裝起來,要想執行這個函式,只需呼叫其函式名即可。 2、好處: 程式碼重用;保持一致性;可擴充套件性。 3、示例如下: # -*-coding:utf-8-*-
關於遞迴函式非遞迴函式中引用傳參的問題
首先 我們來看這個函式 typedef int Ele; typedef struct list{ Ele data; list *next; }List,*LNode; void dele2(LNode &l,Ele e){ if(l==NULL)ret
問題記錄 lua賦值函式型別後傳參執行沒效果
今天遇到一個問題 在寫一個公共ui時我想暴露一個介面用來做自己想要的操作 像這樣: function UI:setExecute(callBack) self.execute = callBack end 但使用的時候要有引數的函式時沒有效果
JavaScript中如何使addEventListener繫結的函式既能傳參還能解綁?
var btn = document.getElementsByClassName('btn')[0], remove = document.getElementsByClassName('remove')[0]; var some = function (msg) {
JS學習之函式表示式(一)宣告及遞迴
一.函式宣告 函式表示式是JavaScript中的一個既強大有容易令人困惑的特性。定義函式的方式有兩種:一是函式宣告,二是函式表示式 函式宣告如下,這種定義方法會有函式宣告提升,也就是函式的呼叫可以在函式宣告前
Jquery的each函式拼接字串傳參問題
問題,在使用$.each函式時,有一個操作需要拼接HTML語句,然後在拼接後的點選事件函式中出傳入當前el物件,一直報錯,不曉得什麼原因。(data是ajax返回的json物件) 解決辦法: 將el轉
初學servlet之@WebServlet傳參
html tps ont rate ans https version ets serial package app01a;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.
js addEventListener調用傳參函數
fun es5 我們 call his event som use 不同 先看這段代碼 1 function abc(key){ 2 console.log(key); 3 } 4 for(let i=0;i<oInput.length;i++){ 5
JS普通瀏覽器頁面傳參
-s session .html left nes turn pre ref coo 一、利用URL傳參 在頁面跳轉的時候通過設置window.location.href添加參數, 在接收參數的頁面通過window.location.search獲取參數字符串。 1 發送參
JS ajax請求 formData傳參方式
alert UNC log 類型 pan ... tro for als 1 $("#importBtn").click(function(){ 2 if($("#conId").val() == ""){ 3
python函式之函式的定義
全部測試程式碼 #!/usr/bin/env python3 #_*_ coding:utf-8 _*_ #函式的定義 #def 方法名(引數列表):下一行縮排編寫方法體,返回值使用return,返回空可直接寫return #將函式定義在py檔案中需要在python直譯器中使用fr
Vue-router(4)之路由傳參、命名路由 和 程式設計式導航
路由傳參 案例:現在需要展示一個電影列表頁,點選每一部電影,會跳轉到該部電影詳情頁(跳轉時攜帶type和id) 程式碼實現(未攜帶type): index.js import Vue from 'vue' // 1. 匯入和安裝 import VueRouter from 'vue-ro
Vue之url傳參
在router.js定義需要傳遞的引數 import Vue from 'vue' import Router from 'vue-router' import Home from './views/Home.vue' import Error from './view