document.write Javascript函数

document.write Javascript函数,javascript,html,Javascript,Html,这是我的密码: <script LANGUAGE="Javascript"> function choiceReturn(obj) { switch(obj.value) { case "1": document.write("<input value='Fund (L###)' type='text' class='butt

这是我的密码:

<script LANGUAGE="Javascript">
        function choiceReturn(obj) {
            switch(obj.value) {
                case "1":
                    document.write("<input value='Fund (L###)' type='text' 
                    class='button3' onfocus='if(this.value == "Fund (L###)"){this.value = '';}' 
                    onblur="if(this.value == ''){this.value = 'Fund (L###)'}">");

            }
        }
        </script>

<select name="funds_menu" onchange="choiceReturn(this);">
            <option selected>Choose 1 to 3</option>
            <option value="1">1. Choose fund</option>
            <option value="2">2. Prepare data</option>
            <option value="3">3. Perform valuation</option>
            </select>

功能选择转向(obj){
开关(对象值){
案例“1”:
文件。填写(“”);
}
}
选择1到3
1.选择基金
2.准备数据
3.进行估价
我的意图:从列表中选择第一个项目时,将出现基金(L#####)输入框。我还有一些关于blur和onfocus的小代码,让它更酷一些


然而,什么也没有发生。我做错了什么?这里有很多引号。也许这就是造成混乱的原因。

多行字符串在JavaScript中不是一种东西。您将不得不分别连接它们。此外,某些嵌套字符串没有正确转义

固定代码:

document.write("<input value='Fund (L###)' type='text' " +
    "class='button3' onfocus='if(this.value == \"Fund (L###)\"){this.value = \"\";}' " + 
    "onblur='if(this.value == \"\"){this.value = \"Fund (L###)\"}'>");

还请注意,您尝试执行的操作已经存在:.

document.write
删除页面上的所有其他内容。哦,我明白了。您知道如何在Javascript代码中输入HTMl吗?@gud理想情况下,您应该使用dom操作。如果你真的想使用html,有`.innerHTMLThat确实是个坏主意。正如Jeff Shaver所说,当我使用write()时,所有的网页都被删除了!我都试过了,但都不管用,所以我做错了什么。我不能用write()替换它们吗?@Gudmundur我已经编辑了答案,以包含更多信息。您可以使用多行字符串,而不必将字符串附加到字符串中,您只需要在字符串中每行的末尾添加一个“\”。一般认为这是一种糟糕的编码实践,更不用说有点不方便了。谢谢你的帮助!
var inputElement = document.createElement('input');
inputElement.value = 'Fund (L###)';
inputElement.type = 'text';
inputElement.className = 'button3';
inputElement.addEventListener('focus', function() {
    if (this.value == "Fund (L###)") {
        this.value = "";
    }
});
inputElement.addEventListener('blur', function() {
    if (this.value == "") {
        this.value = "Fund (L###)"
    }
});
document.getElementById('someElement').appendChild(inputElement);