jquery
  • html
  • css
  • internet-explorer-9
  • 2012-08-22 53 views 0 likes 
    0

    我有以下javascript代码附加div中的输入元素。这适用于firefox,chrome和IE9兼容模式,但它在IE9中不起作用。jquery append不能在IE9中工作,但在兼容性?

    function add(){ 
        $(document).ready(function(){ 
         $(".lbl").append("<div>Bild (400x400px)<br/><input type='file' name='upload[]' id='upload[]' onChange='add()' /><br/>Bild beskrivning:<br/><textarea name='imgdesc[]'></textarea></div>"); 
        }); 
    } 
    window.load(add()); 
    

    这就是追加正在做,它位于一个形式里面,一台TD

    <tr><td colspan="2"> 
        <div class='lbl'></div> 
    </td></tr> 
    <tr><td> 
        <input type="submit" name="newobject" value="Spara och granska"> 
    </td></tr> 
    </table> 
    

    关于如何在IE9这项工作任何想法里面的html代码?

    +0

    你使用jQuery 1.8.0? –

    +2

    请问为什么你在使用javascript函数调用load时使用jquery ready函数?为什么不使用文件准备在外面打电话添加? – thatidiotguy

    回答

    1

    尝试像这样

    $(document).ready(function() { 
        $(window).load(add()); 
    }); 
    
    function add() { 
        $(".lbl").append("<div>Bild (400x400px)<br/><input type='file' name='upload[]' id='upload[]' onChange='add()' /><br/>Bild beskrivning:<br/><textarea name='imgdesc[]'></textarea></div>"); 
    }; 
    

    http://jsfiddle.net/sBVam/3/

    它看起来像IE9不支持负载方法,下面的错误在控制台中显示出来

    SCRIPT438:对象没有按't支持财产或方法'负载' 显示,第25行字符1

    您可以通过使窗口成为jQuery对象来使用jQuery的加载方法。或者,您可以使用.onload方法与本机窗口Dom对象..即。 window.onload()

    +0

    谢谢,这个作品! –

    0

    改变这种

    window.onload = add(); 
    
    相关问题