我对代码中的几个函数感到非常沮丧。当用户点击链接时,我有几个函数会触发。
参数已正确发送到两个函数,但是当用户单击 detailplace
的链接时,我收到一个引用错误,即 SomeName
未定义。功能细节似乎没有问题。为什么 detail
有效而 detailplace
无效?
HTML
<a href="javascript:detail(123456);">Details</a>
<a href="javascript:detailplace(SomeName);">Details</a>
Javascript
function detail(property) {
var summaryhtml = '<iframe src="' + URL + property + '" width="340px" height="400px" frameborder="0" class="sum_frame"></iframe>';
document.getElementById('itab1').innerHTML = summaryhtml;
}
function detailplace(place) {
var summaryhtml = '<iframe src="' + URL + place + '" width="340px" height="400px" frameborder="0" class="sum_frame"></iframe>';
document.getElementById('itab1').innerHTML = summaryhtml;
}
我采纳了您的建议并编辑了代码以包含引号。问题是我正在用 javascript 构建链接。 SomeName 在别处定义为字符串。
link = '<a href="javascript:detailplace("';
link += SomeName;
link += '")";>Site Details</a>';
在引号内转义引号的正确方法是什么,以便我可以将字符串作为参数发送?
最佳答案
你必须用引号
包裹SomeName
:
<a href="javascript:detailplace('SomeName');">Details</a>
当你不带引号传递它时,javascript
认为它是 undefined
的变量。
关于javascript - 函数参数未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703830/