2017-03-07 102 views
1
<td class="row" id="253"> 
    <select class="available-room" style="" id="roomToBook"> 
<option value="0">Select</option> 
<option value=1>1</option> 
<option value=2>2</option> 
<option value=3>3</option> 
<option value=4>4</option> 
<option value=5>5</option> 
<option value=6>6</option> 
<option value=7>7</option> 
<option value=8>8</option> 
<option value=9>9</option> 
<option value=10>10</option> 
</select>`enter code here` 
    </td> 
    <td class="row" id="253"> 
    <select class="available-room" style="" id="roomToBook"> 
<option value="0">Select</option> 
<option value=1>1</option> 
<option value=2>2</option> 
<option value=3>3</option> 
<option value=4>4</option> 
<option value=5>5</option> 
<option value=6>6</option> 
<option value=7>7</option> 
<option value=8>8</option> 
<option value=9>9</option> 
<option value=10>10</option> 
</select>    </td> 
    <td class="row" id="253"> 
    <select class="available-room" style="" id="roomToBook"> 
<option value="0">Select</option> 
<option value=1>1</option> 
<option value=2>2</option> 
<option value=3>3</option> 
<option value=4>4</option> 
<option value=5>5</option> 
<option value=6>6</option> 
<option value=7>7</option> 
<option value=8>8</option> 
<option value=9>9</option> 
<option value=10>10</option> 
</select>    </td> 

我有一個三個表格單元具有不同的ID。在用戶選擇相應id的選項並在用戶從同一時間從不同表格單元中選擇兩個或更多兩個選項值時,在數組中添加標識時,我希望獲得標識。 我也有一個javascript代碼。它經常在每次選擇相同id的選項值時顯示相同的id。請別人幫助我。如何在javascript數組中添加某個div元素的id?

$(document).ready(function() { 
$(document).on('change', '.available-room', function() { 
    var room_id = new Array(); 
     room_id.push($(this).parent('td').attr('id')); 
     alert(room_id); 
    }); 
    });  
+0

你的HTML是無效的。 'id'屬性**在文檔中必須是唯一的,不能在多個元素上使用相同的'id'。所以這是第一個要解決的問題。如果你需要將元素分組在一起,'class'是有用的。 (你也會讓人們告訴你'id's不能是數字,他們可以,但是如果你需要使用帶有數字'id'值的CSS選擇器,這是一個痛苦。\ [[只限制](https ://www.w3.org/TR/html5/dom.html#the-id-attribute)它們必須是唯一的,不能包含空格,並且必須至少有一個字符,如果給出。]) –

+0

你是正確的先生,我在提問時忘記了改變id值。此id屬性在我的項目中始終是唯一的,它來自數據庫。感謝您的補充。 –

回答

1

您必須聲明ID在一個文件中唯一的,這樣就可以通過$(this).val()和數組聲明var room_id = new Array()得到的值必須是外.on('change',function(){....});

 <table> 
      <td class="row" id="roomToBook_1"> 
       <select class="available-room" style="" id="roomToBook1"> 
        <option value="0">Select</option> 
        <option value=1>1</option> 
        <option value=2>2</option> 
        <option value=3>3</option> 
        <option value=4>4</option> 
        <option value=5>5</option> 
        <option value=6>6</option> 
        <option value=7>7</option> 
        <option value=8>8</option> 
        <option value=9>9</option> 
        <option value=10>10</option> 
       </select> 
      </td> 
      <td class="row" id="roomToBook_2"> 
       <select class="available-room" style="" id="roomToBook2"> 
        <option value="0">Select</option> 
        <option value=1>1</option> 
        <option value=2>2</option> 
        <option value=3>3</option> 
        <option value=4>4</option> 
        <option value=5>5</option> 
        <option value=6>6</option> 
        <option value=7>7</option> 
        <option value=8>8</option> 
        <option value=9>9</option> 
        <option value=10>10</option> 
       </select>    </td> 
      <td class="row" id="roomToBook_3"> 
       <select class="available-room" style="" id="roomToBook3"> 
        <option value="0">Select</option> 
        <option value=1>1</option> 
        <option value=2>2</option> 
        <option value=3>3</option> 
        <option value=4>4</option> 
        <option value=5>5</option> 
        <option value=6>6</option> 
        <option value=7>7</option> 
        <option value=8>8</option> 
        <option value=9>9</option> 
        <option value=10>10</option> 
       </select>    </td> 
     </table> 


     <script> 

      $(document).ready(function() { 
       var room_id = new Array(); 
       $(document).on('change', '.available-room', function() { 

        room_id.push($(this).val()); 
        //alert(room_id); 
        alert(JSON.stringify(room_id)); 
       }); 
      }); 


     </script>  
+0

不工作,先生。我希望id屬性不是所選的選項值。另一件事是,id應該被添加到數組中,而不是在每個選擇中,而是在一個選項值中進行選擇。 –

+0

然後你使用'$(this).attr(「id」);'得到編號 –

+0

我已經這樣做了。主要問題是在選擇不同的選項值時,警報經常會拋出相同的ID。你有什麼想法只能得到一個ID?請幫忙。 –

相關問題