getElementById()。value为文本框提供空白

时间:2014-06-27 07:59:26

标签: javascript html

我正在尝试将文本框中输入的值显示为javascript alert()。我有一个表格onSubmit(),我正在调用一个函数checkLogin(),我在其中警告在#test_user文本框中输入的值。以下是HTML代码:

<form id="login_form" name="login_form" method="post" action="verifylogin.php" onSubmit="checkLogin()">
    <input type="text" id="test_user" name="username" class="inputbox" placeholder="Username" value=""/>
    <input type="password" id="password" name="password" class="inputbox" placeholder="Password" />
    <input type="submit" id="login" name="submit" value="LOG IN">
    <a href="#" class="login_facebook">Login with facebook</a>
</form>

以下是js中的checkLogin()函数:

function checkLogin() {     
    var uname = document.getElementById('test_user').value;     
    alert(uname); 
}

我需要在警告中显示id为#test_user的文本框中输入的文本,但警报不会显示任何内容。显示空白警报。 我知道这也可以通过将值作为参数传递给函数来完成,但我想知道为什么这种方法不起作用。 请帮忙。

更新:当我单独使用此代码时,它确实有效,但当我在我正在开发的网站中执行此操作时,会出现此问题。我无法理解为什么会这样。

更新:以下是我的所有HTML代码:

<!doctype html>
<!--[if IE 7 ]>    <html lang="en-gb" class="isie ie7 oldie no-js"> <![endif]-->
<!--[if IE 8 ]>    <html lang="en-gb" class="isie ie8 oldie no-js"> <![endif]-->
<!--[if IE 9 ]>    <html lang="en-gb" class="isie ie9 no-js"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html lang="en-gb" class="no-js"> <!--<![endif]-->

<head>
    <title><?php echo $title?> | App Contest</title>

    <meta charset="utf-8">
        <meta name="keywords" content="app contest" />
    <meta name="description" content="Welcome to App Contest" />

    <link rel="stylesheet" href="<?php echo base_url(); ?>css/bootstrap.css" type="text/css" />
    <link rel="stylesheet" href="<?php echo base_url(); ?>addons/superfish_responsive/superfish.css" type="text/css" />
    <link rel="stylesheet" href="<?php echo base_url(); ?>css/template.css" type="text/css" />
    <link rel="stylesheet" href="<?php echo base_url(); ?>css/updates.css" type="text/css" />
    <link rel="stylesheet" href="<?php echo base_url(); ?>css/custom.css" type="text/css" />


    <!-- This stylesheet only adds some repairs on idevices  -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <link rel="stylesheet" href="<?php echo base_url(); ?>css/responsive-devices.css" type="text/css" />

    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Lato:300,400,700,900&amp;v1&mp;subset=latin,latin-ext" type="text/css" media="screen" id="google_font" />
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans:400,400italic,700&amp;v1&mp;subset=latin,latin-ext" type="text/css" media="screen" id="google_font_body" />

    <!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if offline -->
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="<?php echo base_url(); ?>js/jquery-1.8.2.min.js">\x3C/script>')</script>
    <script src="<?php echo base_url(); ?>js/jquery.noconflict.js" type="text/javascript"></script>
    <script src="<?php echo base_url(); ?>js/common_functions.js" type="text/javascript"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.1/modernizr.min.js" type="text/javascript"></script>

    <link rel="shortcut icon" href="<?php echo base_url(); ?>images/favicons/favicon.png">
    <link rel="apple-touch-icon" href="<?php echo base_url(); ?>images/favicons/apple-touch-icon-57x57.png">
    <link rel="apple-touch-icon" sizes="72x72" href="<?php echo base_url(); ?>images/favicons/apple-touch-icon-72x72.png">
    <link rel="apple-touch-icon" sizes="114x114" href="<?php echo base_url(); ?>images/favicons/apple-touch-icon-114x114.png">

    <!--[if lte IE 9]>
        <link rel="stylesheet" type="text/css" href="css/fixes.css" />
    <![endif]-->

    <!--[if lte IE 8]>
        <script src="js/respond.js"></script>
        <script type="text/javascript"> 
        var $buoop = {vs:{i:8,f:6,o:10.6,s:4,n:9}} 
        $buoop.ol = window.onload; 
        window.onload=function(){ 
         try {if ($buoop.ol) $buoop.ol();}catch (e) {} 
         var e = document.createElement("script"); 
         e.setAttribute("type", "text/javascript"); 
         e.setAttribute("src", "http://browser-update.org/update.js"); 
         document.body.appendChild(e); 
        } 
        </script> 
    <![endif]-->

    <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <!-- Facebook OpenGraph Tags - Replace with your own -->
    <meta property="og:title" content="KALLYAS Template HTML"/>
    <meta property="og:type" content="website"/>
    <meta property="og:url" content="http://www.hogash.com/demo/kalypso_html/"/>
    <meta property="og:image" content="http://www.hogash.com/demo/kalypso_html/images/logo.png"/>
    <meta property="og:site_name" content="Kallyas"/>
    <meta property="fb:app_id" content=""/> <!-- PUT HERE YOUR OWN APP ID - you could get errors if you don't use this one -->
    <meta property="og:description" content="Welcome to KALLYAS Template, a wonderful and premium product for multipurpose websites"/>
    <!-- END Facebook OpenGraph Tags -->

    <!-- THIS IS THE DARK THEME STYLESEET // REMOVE COMMENTS TO ENABLE -->
    <!-- <link rel="stylesheet" href="css/dark-theme.css" type="text/css" /> -->
    <!-- END DARK THEME -->

</head>

<body class="">
        <!-- ADD AN APPLICATION ID !!
    If you want to know how to find out your app id, either search on google for: facebook appid, either go to http://rieglerova.net/how-to-get-a-facebook-app-id/ -->
    <div id="fb-root"></div>
    <script>(function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1&appId="; // addyour appId here
    fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>

        <div class="support_panel" id="sliding_panel">
        <div class="container">
            <div class="row">
                <div class="span9">
                    <h4 class="m_title">HOW TO SHOP</h4>
                    <div class="m_content how_to_shop">
                        <div class="row">
                            <div class="span3">
                                <span class="number">1</span> Login or create new account.
                            </div>
                            <div class="span3">
                                <span class="number">2</span> Review your order.
                            </div>
                            <div class="span3">
                                <span class="number">3</span> Payment &amp; <strong>FREE</strong> shipment
                            </div>
                        </div>
                        <p>If you still have problems, please let us know, by sending an email to support@website.com . Thank you!</p>
                    </div><!-- end how to shop steps -->
                </div>
                <div class="span3">
                    <h4 class="m_title">SHOWROOM HOURS</h4>
                    <div class="m_content">
                    Mon-Fri 9:00AM - 6:00AM<br>
                    Sat - 9:00AM-5:00PM<br>
                    Sundays by appointment only!
                    </div>
                </div>Document.getElementById
            </div>
        </div>
    </div><!-- end support panel -->

    <div class="login_register_stuff hide"><!-- Login/Register Modal forms - hidded by default to be opened through modal -->
        <div id="login_panel">
            <div class="inner-container login-panel">
                <h3 class="m_title">SIGN IN YOUR ACCOUNT TO HAVE ACCESS TO DIFFERENT FEATURES</h3>
                <form id="login_form" name="login_form" method="post" action="<?php echo base_url(); ?>index.php/verifylogin" onSubmit="checkLogin()">
                    <a href="#" class="create_account" onClick="ppOpen('#register_panel', '280');">Login with google</a>
                    <input type="text" id="test_user" name="username" class="inputbox" placeholder="Username" onblur="checkEmpty(this.value)" />
                    <input type="password" id="password" name="password" class="inputbox" placeholder="Password" />
                    <input type="submit" id="login" name="submit" value="LOG IN">
                    <a href="#" class="login_facebook">Login with facebook</a>
                </form>
<!--
                <div class="links"><a href="#" onClick="ppOpen('#forgot_panel', '350');">FORGOT YOUR USERNAME?</a> / <a href="#" onClick="ppOpen('#forgot_panel', '350');">FORGOT YOUR PASSWORD?</a></div>
-->
            </div>
        </div><!-- end login panel -->

        <div id="register_panel">
            <div class="inner-container register-panel">
                <h3 class="m_title">CREATE ACCOUNT</h3>
                <form id="register_form" name="register_form" method="post">
                    <p>
                        <input type="text" id="reg-username" name="username" class="inputbox" placeholder="Username">
                    </p>
                    <p>
                        <input type="text" id="fullname" name="fullname" class="inputbox" placeholder="Your full name">
                    </p>
                    <p>
                        <input type="text" id="reg-email" name="email" class="inputbox" placeholder="Your email">
                    </p>
                    <p>
                        <input type="password" id="reg-password" name="password" class="inputbox" placeholder="Desired password">
                    </p>
                    <p>
                        <input type="password" id="confirm_password" name="confirm_password" class="inputbox" placeholder="Confirm password">
                    </p>
                    <p>
                        <input type="submit" id="signup" name="submit" value="CREATE MY ACCOUNT">
                    </p>
                </form>
                <div class="links"><a href="#" onClick="ppOpen('#login_panel', '800');">ALREADY HAVE AN ACCOUNT?</a></div>
            </div>
        </div><!-- end register panel -->

        <div id="forgot_panel">
            <div class="inner-container forgot-panel">
                <h3 class="m_title">FORGOT YOUR DETAILS?</h3>
                <form id="forgot_form" name="forgot_form" method="post">
                    <p>
                        <input type="text" id="forgot-email" name="email" class="inputbox" placeholder="Email Address">
                    </p>
                    <p>
                        <input type="submit" id="recover" name="submit" value="SEND MY DETAILS!">
                    </p>
                </form>
                <div class="links"><a href="#" onClick="ppOpen('#login_panel', '800');">AAH, WAIT, I REMEMBER NOW!</a></div>
            </div>
        </div><!-- end register panel -->
    </div><!-- end login register stuff -->

    <div id="page_wrapper">

        <header id="header" class="style2">
            <div class="container">

                <!-- logo -->
                <h1 id="logo"><a href="<?php echo base_url(); ?>" style="color:#fff">App Contest

                </a></h1>

                <ul class="topnav navRight">
                    <li><a href="#" id="open_sliding_panel">
                            <span class="icon-remove-circle icon-white"></span> 
                        </a>
                    </li>
                    <?php if(isset($username))
                    {
                        echo'<li><a href="userhome/logout">LOGOUT</a></li>';
                    }
                    else
                    {
                        echo '<li><a href="#login_panel" data-rel="prettyPhoto[login_panel]">LOGIN</a></li>';
                    }?>
                </ul><!-- end topnav // right aligned -->

                <!-- end topnav // left aligned -->



<script type="text/javascript">
// THIS SCRIPT DETECTS THE ACTIVE ELEMENT AND ADDS ACTIVE CLASS
(function($){ 
    $(document).ready(function(){
        var pathname = window.location.pathname,
            page = pathname.split(/[/ ]+/).pop(),
            menuItems = $('#main_menu a');
        menuItems.each(function(){
            var mi = $(this),
                miHrefs = mi.attr("href"),
                miParents = mi.parents('li');
            if(page == miHrefs) {
                miParents.addClass("active").siblings().removeClass('active');
            }
        });
    });
})(jQuery);
</script>


            </div>
        </header>

函数checkLogin()位于common_functions.js文件中,我在行中包含:33,登录表单位于第129行。

2 个答案:

答案 0 :(得分:1)

试试这个小提琴,它对我有用 http://jsfiddle.net/WR2en/

你可以看到错误是

onSubmit="javascript:checkLogin();">

答案 1 :(得分:-2)

试试这个

<html>
 <head>
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script>
   <script>
     function checkLogin()
     {
        var uname = jQuery('#test_user').val();
        if(uname=='')
          alert('Enter Username');
        else
          alert(uname);
     //return true; // checklogin true
       return false; // checklogin fail
     }
 </script>
 </head>
 <body>

<form id="login_form" name="login_form" method="post" action="verifylogin.php" onSubmit="return checkLogin()">
    <input type="text" id="test_user" name="username" class="inputbox" placeholder="Username" value=""/>
    <input type="password" id="password" name="password" class="inputbox" placeholder="Password" />
    <input type="submit" id="login" name="submit" value="LOG IN">
    <a href="#" class="login_facebook">Login with facebook</a>
</form>

</body>
</html>