这让我发疯:
我可以成功地将参数传递给此函数,并在警报中显示它们。如果我在函数中定义值,我也可以通过id填充div。
function getStuff( req, elementid ) {
//var req = 'slider';
//var elementid = '#slider';
//var req = 'thumbnails';
//var elementid = '#thumbnails';
$.ajax({
async: false,
url: '/update',
contentType: 'text/html',
data: { putski: req },
type: 'GET',
dataType: "html",
success: function(stuff) {
$( elementid ).html(stuff);
alert(req+elementid)
},
error: function( xhr, status, errorThrown ) {
alert( "Sorry, there was a problem!" );
( "Error: " + errorThrown );
console.log( "Status: " + status );
console.dir( xhr );
},
complete: function( xhr, status ) {
return false;
}
});
};
$(document).ready( getStuff( 'thumbnails', '#thumbnails' ) ); // alert shows thumbnails#thumbnails but div does not populate.
以下变体是填充的,应该排除我所描述的问题以外的其他问题。
function getStuff( req, elementid ) {
var req = 'slider'; //uncomment these definitions and the div populates
var elementid = '#slider';
//var req = 'thumbnails';
//var elementid = '#thumbnails';
$.ajax({
async: false,
url: '/update',
contentType: 'text/html',
data: { putski: req },
type: 'GET',
dataType: "html",
success: function(stuff) {
$( elementid ).html(stuff);
alert(req+elementid)
},
error: function( xhr, status, errorThrown ) {
alert( "Sorry, there was a problem!" );
( "Error: " + errorThrown );
console.log( "Status: " + status );
console.dir( xhr );
},
complete: function( xhr, status ) {
return false;
}
});
};
$(document).ready( getStuff ); // populated using the values defined at the top.
答案 0 :(得分:0)
您正在将苹果与橙子进行比较
在第二个版本中,您可以尝试以下操作:
var req = 'thumbnails';
var elementid = '#thumbnails';
如果这不起作用,那么您知道服务器代码未正确处理“缩略图”参数,或者未定义元素ID“#thumbnails”。我怀疑问题在于传递参数而不是在函数中设置它们。
答案 1 :(得分:0)
好的,我修好了但是我不得不承认,我并不真正理解这种行为。我注释掉了“async:false”,它开始使用缩略图。我首先添加了这一行,因为滑块在没有它的情况下不起作用。 :p也许有人可以对此有所了解?