外部文件中的JS函数无法识别

时间:2011-07-04 19:48:08

标签: javascript html

这是在IE7中。这是一个企业设置,所以不使用IE7不是一个选择。我坚持了下来。

我有一个textarea形式:

<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 detailsPrompt(taken) {
if ((taken === 'focus') && (document.getElementById('details').value==='Enter New Details Here')) {
document.getElementById('details').value='';
}
}

当我点击textarea时,我希望清除值。除外,没有任何反应,并出现此错误:

  

行:196   Char:1   错误:预期的对象   代码:0

第196行对应带有标记

的HTML行

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

知道问题是什么吗?

编辑:包含下面的建议,但仍然无效。

1 个答案:

答案 0 :(得分:2)

这一行:

detailsPrompt(taken) {

应阅读:

function detailsPrompt(taken) {

虽然:

document.getElementById('details').value

找不到你的textarea,因为textarea 没有id

为textarea指定一个值为details

的id属性

也就是说,使用<label>替代的默认值是一个令人讨厌的黑客攻击,具有严重的可访问性含义。