后台更改无法在javascript中工作。怎么了?

时间:2012-10-30 12:06:52

标签: javascript jquery asp.net asp.net-mvc-3 jquery-slider

我正在使用jquery滑块,我有一个单一的布局和一个内容div为content..i需要更改布局的颜色,而我在另一页上滑动。这就是我在使用asp.net mvc3做的事情。

HTML:

    <div id="iPhone_Product">
            <div class="slides_containeriphone" >
                @if (Model == null)
                {
                    <div class="animateriphone" id="1" title="iphone">

                        @Html.Partial("`enter code here`_iPhone_Main")

                    </div>
                        <div class="animateriphone" id="2" title="salah">
                        @Html.Partial("Salah")
                    </div>
                        <div class="animateriphone" id="3" title="tasbeeh">
                        @Html.Partial("_Tasbeeh")
                    </div>
                }
                else
                { 
                    foreach (string s in Model)
                    {
                        <div class="animateriphone">
                            @Html.Partial(s);
                        </div>
                    }
                }

            </div>
        </div>

使用Javascript:     function color_change(){                 var ids = new Array();                 ids [0] ='1';                 ids [1] ='2';                 ids [2] ='3';

            for (var item = 0; item < ids.length; item++) {
                var x = document.getElementById(ids[item]);
            }

        if (x.id == '1' && x.title=='iphone') {
            $(".st_tabs_container").css({ "background-color": "#c8c7c7" });

            }
            else
                if (x.id == '2' && x.title == 'salah') {
                    $(".st_tabs_container").css({ "background-color": "yellow" });
                }
                else
                    if (x.id == '3' && x.title == 'tasbeeh') {
                        $(".st_tabs_container").css({ "background-color": "#c8c7c7" });
                    }
                }
      $(document).ready(function () {
    color_change();
    });

我已经使用这个javascript来改变背景,但它不起作用,任何帮助都会被暗示。

4 个答案:

答案 0 :(得分:0)

非常确定你没有正确调用ids,试试这个:

<div class="animateriphone" id="id2" title="salah">  

var x = document.getElementById('id'+ ids[item]);

答案 1 :(得分:0)

我认为问题在于您使用数字作为ID。尝试用字母开始你的id值。我认为你应该考虑为你的id加前缀,即id1,id2或类似的东西。

你过早关闭for循环,将所有的if / else逻辑嵌入其中。

答案 2 :(得分:0)

因为你在循环中重置x,所以x总是不会是3。

答案 3 :(得分:0)

您正在循环遍历所有元素而不对它们做任何事情,因此根据您要执行的操作,您可能需要将if语句移动到for循环中,或者使用{{ 1}}以适当的方式从for循环中获取。

不完全确定你想要完成什么,但我把我认为你想要做的事情放在一起:http://jsfiddle.net/ZuzTU/1/

x