2016-04-24 58 views
1

select id section阿賈克斯獲得選擇標籤ID通過AJAX傳遞

script section in head 因此,這是這種情況。 我有這個

<select name="users" onchange="showUser(this.value)" id="1"> 
 
    <option value="">Select a person:</option> 
 
    <option value="'.$lectures[4][0].'">'.$lectures[4][0].'</option> 
 
    <option value="'.$lectures[5][0].'">'.$lectures[5][0].'</option> 
 
    <option value="'.$lectures[6][0].'">'.$lectures[6][0].'</option> 
 
    <option value="'.$lectures[7][0].'">'.$lectures[7][0].'</option> 
 
    </select>

喜歡我有很多在頁面中選擇元素。我想通過ajax傳遞兩個值。 一個是選擇的選項值。我已經成功完成了。

其他是我想傳遞選擇標記ID。在這種情況下,它是1

所以你能幫我在阿賈克斯部分

xmlhttp.open("GET","optiondetails.php?q="+str,true); 
    xmlhttp.send(); 

如何通過Ajax傳遞此值。請記住,我必須爲許多選擇標籤執行此操作。所以我不能直接通過價值來傳遞它們。

感謝您的幫助。

回答

1

試試這個:

$(document).ready(function(){ 
 
\t $('select').change(function(){ 
 
    \t var opt = $(this).find('option:selected'); 
 
    console.log(opt.val()); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="1"> 
 
<option value="dog">dog</option> 
 
<option value="cat">cat</option> 
 
</select> 
 

 
<select id="2"> 
 
<option value="chocolate">chocolate</option> 
 
<option value="pizza">pizza</option> 
 
</select>

我用jQuery選擇得到改變選擇元素

+0

感謝您的回答。 –

+0

所以我可以從opt變量傳遞值。你能解釋一下這個console.log(opt.val()); –

+0

當然......它只是將它記錄到控制檯......如果你使用chrome,你可以通過點擊右鍵打開檢查器,然後檢查/檢查元素,進入控制檯,你會看到值。你也可以使用alert而不是console.log – Tal87

0

我認爲這是要做到這一點更方便的方法中所選擇的選項:

$(document).ready(function(){ 
    $(document).on('change', 'select', function(){ 
    var optVal = $(this).val(); 
    var id = $(this).attr('id'); 

    $.ajax({ 
     method: "GET", 
     url: "optiondetails.php", 
     data: {q:optval, tag_id:id}, 
     cache: false 
    }).done(function(response){ 
     console.log(response); 
    }); 

    }); 

}); 
+0

感謝您的好意。我需要傳遞兩個變量,如問題中所述。你能幫助我嗎? –

+0

當然。只需在這裏更改'數據:{q:optval,anotherVariable:anotherValue}' –

+0

在哪一部分我必須要這樣做? –