javascript
  • jquery
  • asp.net
  • image
  • external
  • 2012-03-26 81 views 0 likes 
    0

    我想清除使用外部jquery文件的图像,但它甚至没有向我显示警报。从外部JS文件清除图像

    这里是我的div里面的图像,我需要清除。

    $('#<%=thumbs.ClientId%>').append("<img class='LoadclickImage' align='left' style='height:48px;width:75px;' src='Uploads/" + document.getElementById("<%=currentDirectory.ClientId%>").value + "/" + file.name + "' width='75' height='50' rel='group1' href='Uploads/" + document.getElementById("<%=currentDirectory.ClientId%>").value + "/" + file.name + "' >"); 
    

    这是我的外部JS文件:

    self.ClearAll_button.click(function (e) { 
        $('#<%=thumbs.ClientId%> img').hide; 
        alert('You have cleared everything!'); 
        e.preventDefault(); 
        } 
    
    +0

    通过外部,你的意思是一个单独的.js文件? – 2012-03-26 18:21:56

    +0

    请显示实际的HTML(浏览器所见),而不是您的asp模板。 – jfriend00 2012-03-26 18:22:59

    +0

    你确定你的按钮不是NULL吗? – 2012-03-26 18:23:26

    回答

    2

    <%=thumbs.ClientId%>使得外部JavaScript文件很没有意义。这是一个ASP.NET服务器端标记,只能在ASPX/ASCX WebForms中使用。

    一种可能性是在你的ASPX页面定义全局JavaScript变量:

    <script type="text/javascript"> 
        var thumbsId = '<%=thumbs.ClientId%>'; 
    </script> 
    

    ,然后在单独的js文件中使用这个变量:

    self.ClearAll_button.click(function (e) { 
        $('#' + thumbsId + ' img').hide(); 
        alert('You have cleared everything!'); 
        e.preventDefault(); 
    } 
    

    另一种可能性是使用一类选择而不是一个id选择器。如果您在ASP.NET 4.0上运行,另一种可能性是使用predictable ids,这要归功于ClientIDMode设置。

    +0

    @达林 - 感谢您的回复。它现在给我一个提醒,但不删除图像。 – coder 2012-03-26 18:31:40

    +0

    @达林 - 你的代码中的一个小小的修正已经解决了。对于“隐藏”它应该是hide(); – coder 2012-03-26 18:38:10

    +0

    @DotNetter,对,我已经修复了我的答案。谢谢。 – 2012-03-26 19:17:03

    相关问题