$(document).ready(function())无效

时间:2015-06-15 13:48:00

标签: javascript jquery html css

我在技术上试图从select元素中自动选项卡。 这可以单独使用。

<!DOCTYPE html>
<html>

<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        $("select").change(function() {
            document.getElementById(1).focus();
        });
    });
    </script>
</head>

<body>
    <select name="" id="eventChoose" class="cuSelect">
        <optgroup label="Friends & Family Events">
            <option>Birthday Party</option>
            <option>Anniversary Party</option>
            <option>New Born Party</option>
            <option>Bachelors Party</option>
            <option>Kitty Party</option>
        </optgroup>
        <optgroup label="Corporate Party">
            <option>Team Outing</option>
            <option>Product Launch Party</option>
            <option>Recognition Party</option>
            <option>Network Event</option>
            <option>Seminars</option>
        </optgroup>
        <div>
            <input type="text" id="1">
        </div>
</body>

</html>

但是当我把这段代码放在我网站的主要代码中时,它就会停止工作..

<!DOCTYPE html>
<html lang="en" class="enhanced">

<head>
    <meta charset="utf-8">
    <meta name="HandheldFriendly" content="True" />
    <meta name="MobileOptimized" content="300" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0,       user-scalable=0">
    <meta name="format-detection" content="telephone=no">
    <link rel="stylesheet" href="eventila-web/resources/css/styles.css">
    <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700' rel='stylesheet' type='text/css'>
    <script type="text/javascript">
    $(document).ready(function() {
        $("#eventChoose").change(function() {
            document.getElementById(budget).focus();
        });
    });
    </script>
</head>

<body>
    ....

有人可以告诉我问题是什么吗? 我对javascript很新。

感谢您的帮助。

5 个答案:

答案 0 :(得分:3)

您还没有在代码中定义jquery。添加此

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

答案 1 :(得分:3)

请参阅下面的评论。你还没有包含jQuery脚本,而且还不清楚什么是&#34;预算&#34;是。在您的第二个示例中显示的代码中,您可能会获得未定义变量ReferenceError的{​​{1}}。你的第一个代码示例使用budget,它与1一起使用但很难用于带有jQuery的CSS选择器(你必须以非显而易见的方式逃避它):

getElementById

答案 2 :(得分:0)

不能使用整数作为&#34; id&#34;。

也使用jquery方法!

<input type="text" id="a1">

$('#a1').focus();

答案 3 :(得分:0)

我添加了jquery方法..而预算是我用过的文本框的id。对不起,我忘了提前说。但问题解决了。 我把脚本包含在我的主html文件中,而我有一个单独的js文件。所以,
我的脚本功能大部分被另一个功能所覆盖。我在我的主js文件中添加了我的函数,并从主html中删除了它。它奏效了。 谢谢你的帮助!

答案 4 :(得分:-1)

无论您使用何种技术,id都是一个字符串,因此您需要在引号中包含id。在第二个示例中,您使用的是document.getElementById(预算)。这不起作用,因为undefined不是有效的id。您可以调用document.getElementById(“预算”),这将有效。