2014-06-27 137 views
0

我试图在文本框中输入的值显示为一个javascript alert()。我有一个表单,其中onSubmit(),我打电话给一个函数checkLogin(),其中我提醒在#test_user文本框中输入的值。下面是HTML代码:getElementById()。value为文本框提供空白

<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> 

及以下的checkLogin()功能JS:

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 [email protected] . 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。

+1

有一个在'test_user'值? –

+1

你可以发布你的js代码的其余部分吗? – Stefan

+2

你确定ID没有在页面上出现两次吗?喜欢*两个*登录表单? – Boldewyn

回答

1

试试这个小提琴,它为我工作 http://jsfiddle.net/WR2en/

正如你所看到的错误是

onSubmit="javascript:checkLogin();"> 
+0

是的,它工作在小提琴中,如果我们在一个单独的HTML文件中执行它,但使用我的代码,它也会出现同样的问题。 –

+0

你能粘贴你所有的代码吗? – Nick

+0

更新了问题。 –

-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> 
+0

在第一种情况下,不显示警报,在后者中显示空白警报。 –

+0

检查我更新的代码... –