函数中传递的参数显示Uncaught ReferenceError

时间:2015-08-19 23:22:19

标签: javascript

我正在调用函数onclick事件select_(argum);,无论我传递什么值,它都会在控制台中显示Uncaught ReferenceError。如果我传递了span元素的id的登录或注册,那么它会传递ObjectHtmlSpanElement

<form method="post">
<span id="login" onClick="select_(abcd);">LOGIN</span>|<span id="signup" onClick="select_(sign)">SIGNUP</span>
<div id="login_form">
<table>
    <tr>
        <td><input type="email" name="login_email" placeholder="Email" /></td>        
    </tr>
    <tr>
        <td><input type="password" name="login_password" placeholder="Password" /></td>
    </tr>
</table>
</div>
<div id="signup_form">
<table>
    <tr>
        <td><input type="text" name="fname" placeholder="First Name" /></td>
    </tr>
    <tr>
        <td><input type="text" name="lname" placeholder="Last Name" /></td>
    </tr>
    <tr>
        <td><input type="email" name="login_email" placeholder="Email" /></td>
    </tr>
    <tr>
        <td><input type="password" name="login_password" placeholder="Password" /></td>
    </tr>
    <tr>
        <td><input type="password" name="confirm_login_password" placeholder="Confirm Password" /></td>
    </tr>
</table>
</div>    
</table>
<a href="<?php echo $fb_loginUrl;?>" ><img id="facebook" src="img/fblogin.png" /></a>
<a href="<?php echo $authUrl;?>"><img id="google" src="img/signin_button.png" /></a><br>
</form>
</body>
<script>
function _(id){
    return document.getElementById(id);
}
function select_(tabs){//Pass name of selected tab
alert(tabs);
    if(tabs == "abcd"){
        _("login_form").style.display = "block";//Display Login form
        _("signup_form").style.display = "none";//Hides Signup Form
    }
    else{
        _("login_form").style.display = "none";//Hide Login Form
        _("signup_form").style.display = "block";//Display Signup Form
    }
}
</script>

2 个答案:

答案 0 :(得分:2)

必须使用单引号' '传递参数 因此,您可以按如下方式重新编写span标记:

<span id="login" onClick="select_('abcd');">LOGIN</span>|<span id="signup" onClick="select_('sign')">SIGNUP</span>

答案 1 :(得分:1)

<span id="login" onClick="select_('abcd');">LOGIN</span>|<span id="signup" onClick="select_('sign')">SIGNUP</span>

将参数放在引号''中。 http://jsfiddle.net/jwnek10j/ 在这种情况下,您需要字符串。