这是在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事件。
知道问题是什么吗?
编辑:包含下面的建议,但仍然无效。
答案 0 :(得分:2)
这一行:
detailsPrompt(taken) {
应阅读:
function detailsPrompt(taken) {
虽然:
document.getElementById('details').value
找不到你的textarea,因为textarea 没有id 。
为textarea指定一个值为details
也就是说,使用<label>
替代的默认值是一个令人讨厌的黑客攻击,具有严重的可访问性含义。