1. 两次输出的time_key 不一样..
var time_key = 0;
$.post('<?php echo $ajaxUrl['time'] ?>',arg , function(data){ $("#time").empty();
$.each(data.data, function(key, val) {
if(val == time)
{
time_key = key;
alert(time_key); // 这边的值是需要的
}
$("#time").append("<option value='"+ key +"'>"+ val+"</option>"); //为Select追加一个Option(下拉项) }); }, 'json');
alert(time_key); // 这边的值又变成0了
$('#time').val(time_key);
$('#time').attr("value",time);
2.select 的 value 值 和显示的的不一样javascripthtml
这样解决。你在jsp里面写一个<input id="hiddenId" type="hidden" value=""/>
到这一步时候
time_key = key;改为如下:
$("#hiddenId").val(key); $('#time').val($("#hiddenId").val());
$("#time").empty();
$.each(data.data, function(key, val) {
if(val == time)
{
time_key = key;
alert(time_key); // 这边的值是需要的
}
$("#time").append("<option value='"+ key +"'>"+ val+"</option>"); //为Select追加一个Option(下拉项)
});
$('#time').val(time_key);
}, 'json');