jquery中clone()實現表單中增加和減少輸入項

来源:http://www.cnblogs.com/stone2017/archive/2017/05/12/6846766.html
-Advertisement-
Play Games

之前一直沒有深入瞭解到clone()函數的方法,所以對應表單中增加和減少輸入項一直使用如: var copy_html=$(選擇器).html(); alert(copy_html); 問題在於得出的copy_html直接是HTML內容代碼,未經過object封裝,而使用: var copy_htm ...


之前一直沒有深入瞭解到clone()函數的方法,所以對應表單中增加和減少輸入項一直使用如:

var copy_html=$(選擇器).html();  

alert(copy_html);

問題在於得出的copy_html直接是HTML內容代碼,未經過object封裝,而使用:

var copy_html=$(選擇器).clone();  

alert(copy_html);

得出未object對象類型,若$(選擇器)包含了某個觸發,如 onclick,如果想copy_html繼續沿用onclick方法,只需添加true:clone(true)使用。

直接上圖:

點擊“+”,拷貝自身,併在自身之前追加:

增加方法:

$(function(){  

//增加省份、招生人數
  $(".addbtn").click(function(){
    var copy_str=$(this).parents(".form-group").clone();
    copy_str.find("i").removeClass("fa-plus").addClass("fa-minus");    //將按鈕圖標“+”,變為“-”    
    copy_str.find("button").removeClass("addbtn");             //去除class名“addbtn”,避免新增的輸入項沿用此添加方法
    copy_str.find("button").attr("onclick","canelf(this)");          //增加點擊刪除自身觸發事件
    $(this).parent().parent().parent().before(copy_str);          //追加
  });

});

//增加項,刪除方法

function canelf(e){
  $(e).parent().parent().parent().remove();
}

最後貼上HTML代碼:

<div class="form-group">
<label class="control-label col-md-2 col-sm-3 col-xs-3">省份</label>
<div class="col-md-10 col-sm-9 col-xs-9 ">
<div class="col-md-2 col-sm-3 col-xs-3 " style="padding-left:0;">
<select class="form-control input-sm">
<option>全部</option>
<option value="北京">北京市</option>
<option value="浙江省">浙江省</option>
<option value="天津市">天津市</option>
<option value="安徽省">安徽省</option>
<option value="上海市">上海市</option>
<option value="福建省">福建省</option>
<option value="重慶市">重慶市</option>
<option value="江西省">江西省</option>
<option value="山東省">山東省</option>
<option value="河南省">河南省</option>
<option value="湖北省">湖北省</option>
<option value="湖南省">湖南省</option>
<option value="廣東省">廣東省</option>
<option value="海南省">海南省</option>
<option value="山西省">山西省</option>
<option value="青海省">青海省</option>
<option value="江蘇省">江蘇省</option>
<option value="遼寧省">遼寧省</option>
<option value="吉林省">吉林省</option>
<option value="臺灣省">臺灣省</option>
<option value="河北省">河北省</option>
<option value="貴州省">貴州省</option>
<option value="四川省">四川省</option>
<option value="雲南省">雲南省</option>
<option value="陝西省">陝西省</option>
<option value="甘肅省">甘肅省</option>
<option value="黑龍江省">黑龍江省</option>
<option value="香港特別行政區">香港特別行政區</option>
<option value="澳門特別行政區">澳門特別行政區</option>
<option value="廣西壯族自治區">廣西壯族自治區</option>
<option value="寧夏回族自治區">寧夏回族自治區</option>
<option value="新疆維吾爾自治區">新疆維吾爾自治區</option>
<option value="內蒙古自治區">內蒙古自治區</option>
<option value="西藏自治區">西藏自治區</option>
</select>
</div>
<div class="col-md-2 col-sm-3 col-xs-3">
<div class='input-group input-group-sm'>
<input type="text" class="form-control" placeholder="計劃招生人數" />
<span class="input-group-addon">人
</span>
</div>
</div>
<div class="col-md-1 col-sm-2 col-xs-2">
<button type="button" class="btn btn-primary btn-sm addbtn"><i class="fa fa-plus"></i></button>
</div>
</div>
</div>

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.children()方法:$('div').children() 遍歷查找div元素的所有子元素節點 2.next()方法:$('div').next() 查找div元素後相鄰的同級元素但非所有同級元素 [相關方法] (1)nextAll()方法:$('div').nextAll() 查找div ...
  • $ionicHistory 定義:當用戶通過導航欄切換視圖頁面的時候,ionicHistory起到跟蹤視圖的作用,類似的瀏覽器的行為方式,一個ionic應用程式能夠保持以前的視圖,當前視圖,和前視圖(如果有一個)。然而,一個典型的Web瀏覽器只跟蹤一個歷史堆棧在一個線性的方式。不同於傳統的瀏覽器環境 ...
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.o ...
  • 組件中的路由 `` 無參數 與router1.x不同點 在vue router2.x中使用 帶參數 在vue devtools中可查看到所有的某個路由的所有信息: 路由的重定向 路由的重定向需要我們在路由文件中配置: 註意:從圖中看出,雖然路由發生了跳轉,但是後面跟的參數並沒有發生變化。 組件內的導 ...
  • for...in遍歷拿到的x是鍵(下標)。而for...of遍歷拿到的x是值,但在對象中會提示不是一個迭代器報錯。例子如下: let x; let a = ['A','B','C']; let b = {name: '劉德華',age: '18'}; console.log(a.length); f ...
  • 一、難以掌控的回調 我在第一話中介紹了非同步的概念、事件迴圈、以及JS編程中可能的3種非同步情況(用戶交互、I/O、定時器)。在編寫非同步操作代碼時,最直接、也是每個JSer最先接觸的寫法一定是回調函數(callback),比如下麵這位段代碼: Ajax請求是一種I/O操作,往往需要較長時間來完成,為了不 ...
  • 為了緊跟潮流,本文將向大家介紹一下視頻直播中的基本流程和主要的技術點,包括但不限於前端技術。 1 H5到底能不能做視頻直播? 當然可以, H5火了這麼久,涵蓋了各個方面的技術。 對於視頻錄製,可以使用強大的webRTC(Web Real-Time Communication)是一個支持網頁瀏覽器進行 ...
  • JQuery中操作Css樣式的方法 css操作都有哪幾種??? 1. "css" 2. "位置" 3. "尺寸" css操作中的css!!! css代碼 html代碼 jq代碼 代碼運行的結果 css操作中的位置!!! css代碼 html代碼 jq代碼 代碼運行的結果 css操作中的尺寸!!! c ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...