无法使用jquery删除外部加载的图像(asp.net mvc3)

时间:2012-08-15 10:02:22

标签: jquery asp.net-mvc-3 mschart

我在局部视图中有一个图像,最终会被视图中的各种控件更改。由MS Chart Controls提供,这意味着我每次更改其中一个设置时都需要创建一个新图像。现在我只想在更改下拉属性时从页面中删除所述图像(稍后我打算调用绘制具有不同参数的图表的操作),但这似乎不起作用。

在我的部分视图中:

<!--I populate the dropdown from a model loaded from a database-->
<select id="scoresSelect">
    @foreach(var option in @Model.testlist)
    {
      <option value="@option">@option</option>
    }
</select>

<div style="clear:both">&nbsp</div>

<img id="statusgraph" src="@Url.Action("StatusGraph", new { title=@Model.Options.First().Value.First()})"/>

 <p>Bottom controls</p>


<!--Downside of using partial views: scripts cannot be externally loaded-->
<script type="text/javascript">

$(document).ready(function () {

    $("#scoresSelect").change(function () {
        alert("changed");   // this executes just fine
        $("#graphid").prop({display: "none"});
    });



});


</script>

警报方法执行得很好,所以我知道这不是一个javascript问题。有谁知道它为什么会破坏以及如何使其发挥作用?

谢谢!

1 个答案:

答案 0 :(得分:0)

使用$("#graphid").css({display: "none"});代替$("#graphid").prop({display: "none"});

.prop()方法只获取匹配集中第一个元素的属性值。

虽然.css()方法是从第一个匹配元素获取样式属性的便捷方法。

注意:display是css。

中的属性