我正在尝试将变量用作jQuery选择器,但它在控制台中输出错误:
错误:语法错误,无法识别的表达式:#jquery.2.1.4.min.js
有没有人解释为什么会这样?
function FileSelected(file) {
var imgId = RoxyUtils.GetUrlParam('img');
$(window.parent.document).find("#" + imgId).attr('src', file.fullPath);
$(window.parent.document).find("#" + imgId).next().val(file.fullPath);
window.parent.closeCustomRoxy();
}
答案 0 :(得分:0)
如果你可以改变:
var imgId = '#' + RoxyUtils.GetUrlParam('img').toString(); //append # in the image ID, and change to string, if returning an integer.
$(window.parent.document).find(imgId).attr('src', file.fullPath);
$(window.parent.document).find(imgId).next().val(file.fullPath);
然后,它应该工作。
让我知道
答案 1 :(得分:0)
刚添加一个if else以确保imgId不为空。
function FileSelected(file) {
var imgId = RoxyUtils.GetUrlParam('img');
if(imgId.trim().length >0){
$(window.parent.document).find("#" + imgId).attr('src', file.fullPath);
$(window.parent.document).find("#" + imgId).next().val(file.fullPath);
window.parent.closeCustomRoxy();
}
else{
console.log("the value of imgId is : " + imgId);
}
}
确保你的imgId没有'#'它的价值。
答案 2 :(得分:-1)
使用context-parameter,您可以尝试使用以下方式....
function FileSelected(file){
/**
* file is an object containing following properties:
*
* fullPath - path to the file - absolute from your site root
*/
var imgId= RoxyUtils.GetUrlParam('img');
$("#"+imgId,window.parent.document).attr('src', file.fullPath);
$("#"+imgId,window.parent.document).next().val(file.fullPath);
window.parent.closeCustomRoxy();
}