javascript
  • php
  • jquery
  • html
  • 2014-11-02 44 views 1 likes 
    1

    這裏是我的PHP代碼在所有下拉的Jquery禁用所選值與值相同

    <?php 
        $menu_items = $this->db->get('menu_items'); 
        $menuOptions ='<select class="item_id" name="item_id[]">'; 
        $menuOptions .='<option value="">-- Select a Menu item --</option>';    
        foreach ($menu_items->result() as $row) { 
        $menuOptions.= '<option value="'.$row->code.'">'.$row->name.'</option>'; 
    } 
         $menuOptions.='</select>'; 
    ?> 
    

    我會響應這$ menuOptions字符串顯示與相同的價值觀選擇框,我有在同10多個選擇框用相同的值

    如果我在一個下拉選擇的值頁面,該值應在該網頁

    這裏所有10名選擇殘障人士是我嘗試,但似乎不取出從第二值的代碼選擇框,它只提取第一個s它被選中

    +0

    你已經調試過了嗎?用console.log()檢查選中的變量。此外,您的$('。item_id')。每個循環都沒有任何意義,因爲循環中的代碼不受循環影響,您可以將其放在循環外部。 – Anton 2014-11-02 14:15:40

    +0

    如果我在第一個下拉列表中選擇一個值,它將顯示控制檯中的選定值,如果我在第二個下拉列表中選擇該值,它將再次顯示第一個下拉列表的值-----------我用過每個函數循環遍歷所有的.item_id類,並在選項 – musthafa 2014-11-02 14:18:48

    +0

    中添加禁用的屬性「我使用每個函數遍歷所有.item_id類並在選項中添加禁用的屬性」這是真的,但循環仍然沒有任何意義。您正在將循環中的選項更改爲禁用,但不會將循環中項目的選項更改爲禁用,因此循環不是必需的。你可以在循環中做一些像$(this).find('option')的東西,這會使循環變得有用。 – Anton 2014-11-02 14:21:48

    回答

    3

    這裏經過選擇的選框的值,因爲類名相同,

    $(".item_id").change(function() { 
        var selected=$('.item_id option:selected').val(); 
        $('.item_id').each(function() { 
        $('option[value="' + selected + '"]').attr('disabled','disabled'); 
        }); 
    }); 
    

    有沒有什麼辦法來禁用了jQuery是你的答案:demo

    $(".item_id").on('focus', function() 
     
    \t \t { 
     
    \t \t // Store the current value on focus and on change 
     
    \t \t previous = this.value; 
     
    \t \t }).change(function() { 
     
    \t \t // Do something with the previous value after the change \t \t 
     
    \t \t //alert(previous); 
     
    \t \t var previoues_val=previous;//alert(p); 
     
    \t \t var selected=$(this).val(); 
     
    \t \t var opts = $(this)[0].options; \t \t 
     
    \t \t var array = $.map(opts, function(elem) { 
     
    \t \t return (elem.value || elem.text); 
     
    \t \t }); 
     
    \t \t //alert(array); 
     
    \t \t $('.item_id').each(function() { 
     
    \t \t \t var v=$(this).val(); 
     
    \t \t \t if(previoues_val != '') 
     
    \t \t \t { 
     
    \t \t \t \t //alert(p); 
     
    \t \t \t \t $('option[value="' + previoues_val + '"]').removeAttr('disabled'); 
     
    \t \t \t } 
     
    \t \t $('option[value="' + selected + '"]').attr('disabled','disabled'); 
     
    \t \t $('option[value=""]').removeAttr('disabled'); 
     
    \t }); 
     
    \t \t // Make sure the previous value is updated 
     
    \t \t previous = this.value; 
     
    \t \t });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
     
    <select class="item_id" name="item_id[]"><option value="">-- Select a Menu item --</option><option value="0">value0</option><option value="1">value1</option><option value="2">value2</option><option value="3">value3</option><option value="4">value4</option><option value="5">value5</option><option value="6">value6</option><option value="7">value7</option><option value="8">value8</option><option value="9">value9</option></select><select class="item_id" name="item_id[]"><option value="">-- Select a Menu item --</option><option value="0">value0</option><option value="1">value1</option><option value="2">value2</option><option value="3">value3</option><option value="4">value4</option><option value="5">value5</option><option value="6">value6</option><option value="7">value7</option><option value="8">value8</option><option value="9">value9</option></select><select class="item_id" name="item_id[]"><option value="">-- Select a Menu item --</option><option value="0">value0</option><option value="1">value1</option><option value="2">value2</option><option value="3">value3</option><option value="4">value4</option><option value="5">value5</option><option value="6">value6</option><option value="7">value7</option><option value="8">value8</option><option value="9">value9</option></select><select class="item_id" name="item_id[]"><option value="">-- Select a Menu item --</option><option value="0">value0</option><option value="1">value1</option><option value="2">value2</option><option value="3">value3</option><option value="4">value4</option><option value="5">value5</option><option value="6">value6</option><option value="7">value7</option><option value="8">value8</option><option value="9">value9</option></select>

    相關問題