我有以下 jquery 代码:
$("#ruletypes").change(function() {
var selectedtype = this.value;
var url;
if (selectedtype == 1) {
url = url1;
} else {
url = url2;
}
$.getJSON(
url,
function(data) {
data = $.parseJSON(data); //converting to a javascript object vs. just string....
if (data !=null){
//remove everything in current list.
$('#contact_types')
.find('option')
.remove()
.end()
//loop through results and add each one
$.each(data, function(i) {
$('#contact_types')
.append($("<option></option>")
.attr("value",this.id)
.text(this.description));
}); //end .each
}//end if
}//end function(data)
);//end getJSON.
//set default values for contact type
if (selectedtype == 1) {
$('#contact_types').val(2).change();
} else {
$('#contact_types').val(1).change();
}
});//end ruletypes.change
$("#contact_types").change(function () {
var selectedtext = $("#contact_types option:selected").html();
alert("select value of contact type is" + selectedtext);
alert(this.value);
});
我的问题/问题是,一旦我以编程方式触发 contact_types 选择框的更改事件,我似乎无法确定值是什么。我有两个警报语句分别返回 undefined 和 null。
我也试过.text()。
你能告诉我我的bug在哪里吗?我需要能够确定contact_types 中当前选定项目的值。
谢谢。