这是我的按钮:
<p>File Uploaded:</p><fieldset><div id='fileloc'>"PROGRAMMATICALLY INSERTED LINK TO FILE" <button type='button' onclick='fileDelete()'>Delete</button></div></fieldset>
这是我的脚本尝试用上传按钮替换div中的值。
<script type="text/javascript">
var fileDelete = function() {
var delDiv = document.getElementById("fileloc")
delDiv.value('<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>');
}
</script>
然而我收到错误:
delDiv.value不是函数。
我会运行document.delDiv吗?我该如何正确地做到这一点?
答案 0 :(得分:2)
您应该使用delDiv.innerHTML = '<p>...';
代替。 value
元素通常存在于<input>
元素中,而不是<div>
s。
此外,您正在执行var fileDelete = function() {}
与function fileDelete() {}
的任何原因?请参阅var functionName = function() {} vs function functionName() {}了解差异以及一种方式是否适用于您的问题。
答案 1 :(得分:1)
我认为你不想value
,而是innerHTML
document.getElementById("fileloc").innerHTML = '<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>';
答案 2 :(得分:1)
使用delDiv.innerHTML = '<p>...</p>';
答案 3 :(得分:1)
这不是一个价值,它是内在的标记。试试这个:
delDiv.innerHTML = '<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>';
答案 4 :(得分:0)
你应该改变innerHtml元素而不是
delDiv.innerHtml = 'your html';
答案 5 :(得分:0)
尝试设置innerHTML属性:
delDiv.innerHTML = '<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>'
答案 6 :(得分:0)
value是元素的属性,因此通过赋值运算符设置:
delDiv.value =
'<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>';
但是,我认为您的意图是在内部设置HTML:
delDiv.innerHTML =
'<p>Upload Support Document</p><fieldset><input type="file" name="file" id="file" /></fieldset>';
...哦,你在前一行忘记了分号;)
答案 7 :(得分:-1)
您应该使用innerHTML
:delDiv.innerHTML = "..."