1. 程式人生 > >多個select下拉框,選中當前某一項,其他下拉框去掉選中的值

多個select下拉框,選中當前某一項,其他下拉框去掉選中的值

複製程式碼
$(document).ready(function() {
        var oldvalue = "";      //上一次選中的值
        var currentvalue = "";  //當前選中的值

        $('.video_in select').each(function() {
            // 預設選中的值
            if ($(this).find("option:selected")) {
                oldvalue = $(this).attr('old');
                var id = $(this
).attr('id'); currentvalue = $(this).find('option:checked').val(); $(this).attr('old', currentvalue); // 如果this下的某一項被選中,則not這個select find option[value=當前選擇的值]外面新增other標籤 // .not('option[value=0]') 該項是select的第一項 預設value為0 $('.video_in select
').not('#' + id).find('option[value=' + currentvalue + ']').not('option[value=0]').wrap('<other></other>') } }) $('.video_in select').change(function(e) { oldvalue = $(this).attr('old'); currentvalue = $(this).find('option:checked').val();
var id = $(this).attr('id'); if (oldvalue != "0") { if(currentvalue==0){ //當前選擇值等於0的一項 => 第一項(請選擇) if($('.video_in select').find('option[value=0]').parent().hasClass("select")){ $('.video_in select').not('#' + id).find('option[value=' + oldvalue + ']').unwrap(); //unwrap 移除other $(this).attr('old', currentvalue); //更新oldvalue的值 已便下次使用 return false; } }else{ $('.video_in select').not('#' + id).find('option[value=' + oldvalue + ']').unwrap(); $('.video_in select').not('#' + id).find('option[value=' + currentvalue + ']').wrap('<other></other>'); $(this).attr('old', currentvalue); //更新oldvalue的值 已便下次使用 if( $('.video_in select').find('option[value=0]').parent().hasClass("select")){ return false; } $('.video_in select').find('option[value=0]').unwrap(); } }else{ $('.video_in select').not('#' + id).find('option[value=' + currentvalue + ']').wrap('<other></other>'); $(this).attr('old', currentvalue); //更新oldvalue的值 已便下次使用 if( $('.video_in select').find('option[value=0]').parent().hasClass("select")){ //如果請選擇 退出 return false; } $('.video_in select').not('#' + id).find('option[value=' + oldvalue + ']').unwrap() } }); });
複製程式碼

相關推薦

select選中當前其他去掉選中

$(document).ready(function() { var oldvalue = ""; //上一次選中的值 var currentvalue = ""; //當前選中的值 $('.video_in select').each(fun

JS:兩json數組合並、去重以及刪除元素

兩個json數組合並去重,以及刪除某一項元素 let ha = [ {id:'H',name:'3'}, {id:'A',name:'6'}, {id:'B',name:'14'}, {id:'C',name:'60'} ]; let hb= [

layui中下選中指定

轉載以下url:https://blog.csdn.net/qq_33594380/article/details/79438026https://blog.csdn.net/lqadam/article/details/71893552先宣告注意事項:這裡還有兩個小問題 1

js解決splice刪除陣列索引錯亂問題

問題:在for迴圈中,對陣列進行操作,刪除陣列某一項使用splice,因索引錯亂導致刪除有漏 解決:使用倒序,從索引最後一項開始遍歷 for (let len = this.correctJson.length, i = len - 1; i >= 0; i--) { if

用e=1/1!+1/2!+1/3!+……公式求e的近似值直到發現小於10^(-5)為止;

 #include<stdio.h> #include<math.h> int main() { int n=1; float e=1,t=1,f=1; do{ f=f*n; t=1/f; e=e+t; n++; }while (t>=1e-6); printf("e=%f\n"

web專案Log4j日誌輸出路徑配置問題 問題描述:一個web專案想在一個tomcat執行例項(通過修改war包名稱的實現)然後每個例項都將日誌輸出到tomcat的logs目錄例項名命名的文

問題描述:一個web專案想在一個tomcat下執行多個例項(通過修改war包名稱的實現),然後每個例項都將日誌輸出到tomcat的logs目錄下例項名命名的資料夾下進行區分檢視每個例項日誌,要求通過儘可能少的改動配置檔案,最好修改例項名後可以不修改log4j的配置檔案。 實現分析:一般實現上面需求,需要在修

004--easyui的combobox設定預設選中

JSP頁面:可以這樣寫,提供option的選項, <input class="easyui-combobox" name="customerStatus" id="customerStatu

[講解]sql except和intersect運算符(比擬兩select語句的結果並前去非重復)

sts reat rop 實現 create select int inter 兼容 圖 1 UNION 中若有重復的行,會被移除,只留下一個 1.簡介 EXCEPT和INTERSECT運算符使您可以比較兩個或多個SELECT語句的結果並返回非重復值。 2.區別

mysql select需要放入一個事務嗎?

from ali 臟讀 trac atom 設置 存在 .get ria 第一次寫博客,還請大家多多支持今天同事問了個問題:在多個select的時候,用不用放入同一個事務?首先先看個例子:[java] view plain copy prin

一個表裏有字段需要同時使用字典表進行關聯顯示如何寫sql查詢語句

TE bbs 創建者 一個 需要 rom signed assigned user 參考:https://bbs.csdn.net/topics/330032307 數據庫裏面有一個字典表,這張表裏面有id段和對應的名字字段。在另外一個記錄的表裏面有對應的上述字典表的id

微信爬取每日發送至多人

ever ear con nbsp ret gin 定時任務 linu url Timer(5, send_news) 每日一句,發送至多人,多個群 1 # -*- coding: utf-8 -*- 2 #from __future__ import unicod

棟100層高的大樓給你兩完全相同的玻璃球。假設從層開始玻璃球會摔碎。那麽怎麽利用手中的兩用什麽最優策略知道這個臨界的層是第幾層?

要求 避免 怎麽 減少 使用 相同 二分 價值 策略 題目有一棟100層高的大樓,給你兩個完全相同的玻璃球。假設從某一層開始,丟下玻璃球會摔碎。那麽怎麽利用手中的兩個球,用什麽最優策略知道這個臨界的層是第幾層???   每次肯定是由低的樓層往高的樓層嘗試,直到在樓層f(

挖坑指南:在vuex的module中的getters裡存在相同的方法名使用mapGetters會報錯?

前言 其實這個標題就是我們今天要談論的話題。 開始 在vuex中有多個module是很正常滴,為了方便管理呢,我們有些module中使用了相同的名稱。那麼,在使用時,就會報錯啦~ 實踐 其實在vuex的官網,已經為我們描述過啦~ vuex:https://vuex.vuejs

mybaties呼叫mysql儲存過程。儲存過程返回select結果集。

先看需求,直接上圖 從圖中看出,需要12條普通的SELECT語句,所以就放到儲存過程中 儲存過程如下: DROP PROCEDURE IF EXISTS proc_report; DELIMITER $ CREATE PROCEDURE proc_report( OUT d_norma

結合例項深入理解js的深拷貝和淺拷貝多種方法實現物件的深拷貝

親們為什麼要研究深拷貝和淺拷貝呢,因為我們專案開發中有許多情況需要拷貝一個數組抑或是物件,但是單純的靠=“賦值”並不會解決所有問題,如果遇到引用型別的物件改變新賦值的物件會造成原始物件也發生同樣改變,而要去除影響就必須用到深拷貝,深拷貝,對於引用物件需要進行深拷貝才會去除影響。如果是值型別直接“=”

VisualStudioCode中建立ASP.NET Core 專案、類庫、控制檯程式並新增應用間的引用

首先安裝VisualStudioCode並且可以使用。 1、首先建立MyApps資料夾,作為專案主目錄,下面將在這個資料夾中建立多個web應用程式、型別、控制檯程式等。 2、開啟VisualStudioCode軟體,選擇“File”->"Open Folder",在彈出框中選擇上述建立的資料夾“My

select、radio選中後,自動彈出一個相應文字供輸入

1、select,彈出相應文字框說明:當select選中值改為else,其值為“-1”時,顯示一個自定義的輸入框,若要將自定義的項加入到select的資料項中,需在後臺將自定義項存入對應的資料表中,這樣,在重新整理後,下一次訪問這個select時,該自定義項就會出出現在se

軟硬程度一樣的雞蛋它們在層摔會碎100層的建築要求最多用兩雞蛋確 定雞蛋安全下落的臨界位置給出臨界位置?如果是n層樓m雞蛋請給出確定臨界位置的演算法

題目:問題:一幢大樓共計100層,某種型別的雞蛋從某一樓層及其以上樓層摔下來時會被打破,從該層樓(即臨界樓層)以下樓層摔下該雞蛋,雞蛋不會出現破損。現給你2個完全一樣的該種類型的雞蛋,問:如何通過這2個雞蛋找到該臨界樓層時,所用的摔雞蛋次數最少? 思考:給了我們2個雞

HTML5的video標籤:擷取視訊源的封面圖poster監聽視訊播放狀態的功能;

// 視訊------視訊截圖 ~~ 視訊播放狀態 ~~ const setMedia = function(video, scale = 0.8) { // 設定poster屬性:(非本地視訊資源會有跨域截圖問題) video.addEventListene

select標簽模擬placeholder屬性與一般操作(最重要的是ios選中的兼容)

hid rem itext lac 沒有 最重要的 _id get find 1.為了統一樣式,常常要模擬placeholder <select> <option disabled selected hidden>請選擇</option