Javascript 使用.innerHTML向JS函数发送参数
我正在尝试运行两个不同的函数,它们做两件不同的事情。两者都需要在单击div时运行。div是在JavaScript的innerHTML函数中生成的 这是第二个运行的方法。它接受一个参数,然后在页面上生成一个divJavascript 使用.innerHTML向JS函数发送参数,javascript,html,parameters,Javascript,Html,Parameters,我正在尝试运行两个不同的函数,它们做两件不同的事情。两者都需要在单击div时运行。div是在JavaScript的innerHTML函数中生成的 这是第二个运行的方法。它接受一个参数,然后在页面上生成一个div //Display larger image: function furtherDetails(mainImage){ var moreInfo = document.getElementById('divpropertyInfo'); moreInfo.innerHTM
//Display larger image:
function furtherDetails(mainImage){
var moreInfo = document.getElementById('divpropertyInfo');
moreInfo.innerHTML = '<div id="propInfoDisplay">' +
'<img id="image" src="'+mainImage+'" alt="Main Image" />' +
'</div>';
}
//显示较大的图像:
功能详细信息(主图像){
var moreInfo=document.getElementById('divpropertyInfo');
moreInfo.innerHTML=“”+
'' +
'';
}
这是运行该函数的代码:
//Create the property div:
function createPropertyDiv(mainImage, bedrooms, bathrooms, parkings, price, address, latitude, longitude){
var propertyDiv = document.getElementById('divsearchResults');
propertyDiv.innerHTML += '<div id="divResults" onclick="showMap('+latitude+','+longitude+');furtherDetails('+mainImage+');">' +
'<img id="mainImage" src="' + mainImage +'" alt="Main Image" />' +
'<p id="numBedrooms">'+ bedrooms +'</p>' +
'<img id="bedroomsImage" src="/images/bedrooms.png" />' +
'<p id="numBathrooms">'+ bathrooms +'</p>' +
'<img id="bathroomsImage" src="/images/bathrooms.png" />' +
'<p id="numParking">'+ parkings +'</p>' +
'<img id="parkingImage" src="/images/carspots.png" />' +
'<p id="Price">'+ price +'</p>' +
'<p id="addressHeading">Address: </p>' +
'<p id="Address">' + address + '</p>' +
'</div>';
}
//创建属性div:
函数createPropertyDiv(主图像、卧室、浴室、停车场、价格、地址、纬度、经度){
var propertyDiv=document.getElementById('divsearchResults');
propertyDiv.innerHTML+=“”+
'' +
“”+卧室+”
'+
'' +
“”+浴室+”
'+
'' +
“”+停车场+”
'+
'' +
“”+Price+”
'+
“地址:
”+
“”+地址+”
'+
'';
}
我得到一个错误:
参数列表后未捕获的语法错误(缺少)
单击
onclick
中的变量需要用'
或“
包围,否则将在单击之前对其求值,从而导致语法错误
onclick="showMap(\''+latitude+'\',\''+longitude+'\');furtherDetails(\''+mainImage+'\')
简单例子
let el=document.getElementById('foo');
设f=“bar”;
功能条(c){
控制台日志(c);
}
el.innerHTML+='Baz';//记录f的值
el.innerHTML+='Boo';//记录功能栏
福
我想问题就在这里
根据您的代码,html将是这样的-
<div id="divResults" onclick="showMap(1,3);furtherDetails(images/123.jpg);">
您必须使用\来转义字符串,您的html应该是这样的-
<div id="divResults" onclick="showMap(1,3); furtherDetails('images/123.jpg');">
您何时收到此错误?你点击它的时间?@Christopher我不认为错误来自这两个函数。你能分享一个显示错误的工作片段吗?如果可能的话,一个JSFIDLE?检查你的函数是否有一对(
&)
@Farsay只有在我点击它时才说是。@Naren错误在其中一个函数中。当我不解析任何参数时,会运行furthedetails()函数。