繁体   English   中英

外部文件中的 JS function 无法识别

[英]JS function in external file not recognized

这是在 IE7 中。 这是一个公司设置,所以不使用 IE7 不是一种选择。 我坚持下去。

我有一个表单中的文本区域:

<textarea name="details" id="details" cols="80" rows="20" onfocus="detailsPrompt('focus')">Enter New Details Here</textarea>

在 html 的部分中调用了一个 javascript 文件:

<script type="text/javascript" src="askopss.js"></script>

在那个 javascript 文件中是这个 function:

function detailsPrompt(taken) {
if ((taken === 'focus') && (document.getElementById('details').value==='Enter New Details Here')) {
document.getElementById('details').value='';
}
}

当我单击文本区域时,我希望清除该值。 除了,什么都没有发生,并且出现了这个错误:

行:196 字符:1 错误:Object 预期代码:0

第 196 行对应于带有标签的 HTML 行

我在另一个被称为“onload”的 function 上遇到了这个问题,我通过将 function 移动到另一个.js 文件然后在文档末尾在其自己的标签中调用该 js 文件来解决了这个问题。 但是,这不是适用于 onclick 事件的解决方案。

知道问题是什么吗?

编辑:包括下面的建议,但它仍然不起作用。

这一行:

detailsPrompt(taken) {

应该读:

function detailsPrompt(taken) {

尽管:

document.getElementById('details').value

找不到您的 textarea 因为 textarea没有 id

给 textarea 一个带有值details的 id 属性

也就是说,使用默认值替代<label>是一种令人讨厌的 hack,具有严重的可访问性影响。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM