更改按钮单击时div的内容

时间:2011-11-30 17:18:48

标签: javascript html

这是我的按钮:

<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吗?我该如何正确地做到这一点?

8 个答案:

答案 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)

您应该使用innerHTMLdelDiv.innerHTML = "..."

相关问题