我有一个jQuery自动完成功能,在选择一个项目时会运行一些AJAX代码。如何模拟列表中项目的选择?我想在首次加载页面时运行此代码,因此我将代码放在DOM ready函数中。我想我必须将一些数据传递给该方法,但不知道该怎么做。感谢。
以下是我要在加载页面时运行的代码:
$("#myAutocomplete").result(function(event, data, formatted) {
if (data){
$.ajax({
url: sURL + "utility/ajaxmuniChart1c",
type: "POST",
data: {muni: data[0]},
dataType: 'json',
success: function(json){
if (data) {
myWidth = (document.getElementById('flot_widget').offsetWidth-15)+"px";
myHeight = (document.getElementById('flot_widget').offsetWidth*.66)+"px";
document.getElementById('placeholder').style.width = myWidth;
document.getElementById('placeholder').style.height = myHeight;
document.getElementById('container').style.display = 'block';
var options = {
xaxis: {
tickDecimals: 0
},
series: {
lines: { show: true, fill: false, fillColor: "rgba(255, 255, 255, 0.8)" },
points: { show: true, fill: true }
}
};
if (document.getElementById('c3').childElementCount > 0){
document.getElementById('c3').innerHTML = "";
};
var plotArea = $.plot("#placeholder", [json], options);
var ctx = plotArea.getCanvas();
loc = sURL + 'php/saveme.php';
var cs = new CanvasSaver(loc);
var btnDownload = cs.generateButton('Download', ctx, 'PTS_Chart');
c3.appendChild(btnDownload);
}
}
})
}
})
答案 0 :(得分:0)
通过直接在$(document).ready(function()
内直接运行AJAX调用解决了这个问题,现在我的代码就是:
$(document).ready(function() {
$.ajax({
url: sURL + "utility/ajaxmuniChart1c",
type: "POST",
data: {muni: "Toronto"},
dataType: 'json',
success: function(json){
...etc.