Jquery - 按ID选择项目不起作用

时间:2016-01-21 02:52:26

标签: javascript jquery angularjs ionic-framework

我正在做一个离子(角度)应用程序,我在我的一个模板的头部有以下简单的代码:

<script>
$(document).ready(function(){

    alert($('#amountID').attr('id'));

});
</script>
</head>
...
<label class="aquitext item item-input" id="amountID">

我曾经有过传统的javascript onclick(&#34; blablabla&#34;)并且它已经达到了一定程度,但我决定将它转移到jquery,现在我很困难,我必须删除并简化到了这一点。我已经尝试了多种排列方式,包括使用有角度的元素,但我一直在不确定&#34;未定义&#34;在警报上。我做错了什么?

(不,我在控制台上没有任何错误)

编辑:似乎这可能与我之后有一个离子滑动盒的事实有关,我认为我对如何绕过它一无所知。现在,我删除了滑块框。好像有&#34;固定&#34;它

完整的结构是在脚本之后(我修剪了一些东西):

</script>
</head>
<body>
   <ion-view>
    <ion-content>                          
        <ion-slide-box>
            <ion-slide> 
            </ion-slide>
            <ion-slide>             
                                <div class="subtitle">blabla</div>

                                <form name="newaquisition">

                                    <label class="aquitext item item-input" id="amountID">
                                        <input ng-model='newaquisubmission.amount' type='number' placeholder='aquisition value' required>
                                    </label>


                                </form>
            </ion-slide>

        </ion-slide-box>
</ion-view>


</ion-content>


</body>
</html>

3 个答案:

答案 0 :(得分:1)

HTML中的标签是否是某个模板的一部分,并通过angular添加到DOM中?

如果您在控制台中运行JS,它是否有效?那么这很可能是一个时间问题。 $(document).ready似乎要早。{/ p>

在角度控制器中尝试$scope.init

答案 1 :(得分:0)

您的代码似乎没有任何问题;它应该工作。

尽管如此,尝试在函数中创建一个变量,然后使用该变量作为alert的值。例如,

    var x = $('#amountID').attr('id');
    alert(x);

如果这不起作用。您的代码中的其他位置可能有错误。

您是否引用了jQuery库(<script src="jquery-2.1.4.min.js"></script>)?

答案 2 :(得分:0)

似乎你没有推送jquery源代码,这段代码是正确的:

<html>

<head>
    <title>Test</title>
    <script type="text/javascript" src="jquery-1.10.2.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            alert($('#amountID').attr('id'));
        });
    </script>
</head>
<body>

<label class="aquitext item item-input" id="amountID">

</body>

</html>