我想将所选选项的id
和value
作为参数传递给我的ajax。我以某种方式可以看到id
通过,但看不到值。
如何做到这一点,我在这里发布了我的代码,请提供任何建议。
我已经尝试了许多方法,但是datString
仍然在Object { id: "3", designationname2: "3" }
上显示console.log
。
<b>Designation</b>
<select name="designation" class="form-control" id="desig" >
<option value="">Select a Designation/Role</option>
<?php
$sql = mysql_query("SELECT id, designation FROM tbl where status =1 and designationtype_id = 1 ");
while ($rows = mysql_fetch_assoc($sql)) {
$des_id2 = $rows['id'];
$designationname2 = $rows['designation'];
echo "<option value=" . $des_id2 . ">" . $designationname2 . "</option>";
}
?>
</select>
还有AJAX
<script src = "http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#desig").change(function () {
var id = $(this).val();
var designationname2 = $('#desig').val();
var dataString = {'id': id, 'designationname2': designationname2};
console.log(dataString);
$.ajax({
type: "POST",
url: "escalation_ajax.php",
data: dataString,
cache: false,
success: function (html) {
$("#rephead").html(html);
}
})
})
})
</script>
最佳答案
您可以更改以下行
var designationname2 = $('#desig').val();
此行将获取您不需要的所选选项的值
至
var designationname2 = $(this).find("option:selected").text()
上面的行将为您提供当前元素文本的所选选项的文本。
要么
var designationname2 = $('#desig option:selected').text()
上面的行将给出选择了选项的任何选择器的文本