input1本来就是单行文本框,怎么可能有换行?
“\n”视为两个字符,就不是换行转义。
如果想手工转义
写成这样
    //从input中取得的不能换行?
    if (window.confirm(str.replace("\\n","\n"))) {
        window.parent.close();
    }

解决方案 »

  1.   

    <HTML>
    <HEAD>
    <TITLE>window.close</TITLE>
    <SCRIPT language="JavaScript">
    function winclose(){
        var str = document.form1.input1.value;    //直接定义的字符串可以换行
        var str1 = "aaaa\nbbbb";
        window.confirm(str1);
        
        str = str.replace(/\\n/g,"\n")    //从input中取得的不能换行?
        if (window.confirm(str)) {
            //window.parent.close();
        }
    }
    </SCRIPT>
    </HEAD><BODY>
    <form name="form1" method="post" >
    <INPUT type="button" name="test" value="close" onClick="winclose()">
    <input type="" name="input1" value="aaaa\nbbbb">
    </form>
    </BODY>
    </HTML>