-------------------引用----------------------
1.JAVASCRIPT引用时,使用的字符语言不一致.
比如:<script type=”text/javascript” src=”xxx.js” charset=”UTF-8″>.xxx.js文件内部使用的是GB2312的格式,外面调用使用的是UTF-8,所以文件内部部分特殊字符因为格式不一致,出现乱码,造成此原因.2.JAVASCRIPT输出HTML字符时,前后标记不匹配.
这种比较常见,往往在输出字符串时,出现单引号(‘)或双引号(“)不配对,或者是在document.write()的时候,没有正确输出单引号(‘)或双引号(“)3.参数内出现HTML标记语言或包含换行符
我今天所遇到的是这种情况.因为我所得到的数据以参数形式传给一函数,结果该数据里包含换行符,造成了此错误.
如:一般测试时只使用单行的数据,是正常的,未出现这个错误,.
当测试时使用多行数据,并使用回车链换行,就出行了此错误.因为里面包含了换行符

---------------------------------------------我是拼接js出问错的(第二行):jsPrint.Append("<input type='text' id='txtBeginTime' class='w80' onblur='initDate(1, this)'");
jsPrint.Append(" onFocus=WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false}); />");如果第二行是:
jsPrint.Append(" onFocus=WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false}); />");
少了HH就没有问题,应该是拼接的时候有空格在,请问怎么修改。

解决方案 »

  1.   

    jsPrint.Append("<input type='text' id='txtBeginTime' class='w80' onblur='initDate(1, this)'");
    jsPrint.Append(" onFocus=\"WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false});\" />");
      

  2.   

    jsPrint.Append("<input type=\"text\" id=\"txtBeginTime\" class=\"w80\" onblur=\"initDate(1, this)\"");
    jsPrint.Append(" onFocus=\"WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false});\" />");
      

  3.   

    好像是日期格式不支持yyyy-MM-dd HH这样的格式吧
      

  4.   


    支持,我在静态页里面使用了可以。(my97date控件)
      

  5.   

    那就不应该啊。
    yyyy-MM-dd HH

    yyyy-MM-dd
    都是字符串唯一的原因可能是你的
    yyyy-MM-dd HH
    中的空格是全角
      

  6.   

    1、2楼方法我之前试验过没用,孟子,yyyy-MM-dd HH
    之间的空格不是全角,我确认过。我是使用topmap地图,页面中要使用按时段查询,加上HH就报未结束的字符串常量,去掉就正常。
      

  7.   

    那你把js文件记事本打开另存为utf-8格式吧。如果html里面可以执行,aspx里面不能执行,则一般是文件编码导致
      

  8.   

    大括号引起的,用双重括号: {{   }}jsPrint.Append(" onFocus=WdatePicker({{dateFmt:'yyyy-MM-dd HH',isShowClear:false}}); />");
      

  9.   

    =====问题解决如下=====<input class="Wdate" type="text" onFocus="WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false})">
    <input class="Wdate" type="text" onFocus=WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false})>
    <input class="Wdate" type="text" onFocus=WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false})>
    <input class="Wdate" type="text" onFocus="WdatePicker({dateFmt:'yyyy-MM-dd HH',isShowClear:false})">
    <input class="Wdate" type="text" onFocus=isForMy97date(this)><script type="text/javascript">
    function isForMy97date(fieldName){
        WdatePicker({el:fieldName,dateFmt:'yyyy-MM-dd HH'});
    }
    </script>
    input:1、2、4都没有问题,3、出现异常,5可以解决3出现的异常。