我正在尝试使用以下方法获取登录表单。我正在使用JQuery版本1.11.2和MVC4。似乎问题来自这行代码
<?php include('submit.php') ?>
<div class="main-wrapper">
<section class="contact-form">
<form action="" method="POST">
<h1>Contact</h1>
<fieldset>
<input maxlength="30" type="text" name="first_name" placeholder="John" required><br>
<input maxlength="30" type="text" name="last_name" placeholder="Smith" required><br>
<input maxlength="30" type="email" name="email" placeholder="john_doe@example.com" required>
</fieldset>
<fieldset>
<textarea maxlength="300" placeholder="Write your text here...." id="message" name="message" cols="40" rows="6" required></textarea>
<button name="submit" type="submit">Send Message</button>
</fieldset>
</form>
</section>
这是Login.cshtml中的完整代码
<input type="button" onclick="getPasswordHash('password', 'nonce', 'hash');
$('#loginForm').submit(function (event) {
event.preventDefault();
alert('Submitting form.. Please wait');
return true;
})" value = "Login" />
getPassword方法可在Login.js文件中找到
@model string
@{
ViewBag.Title = "Login";
}
@section ExtraHeaders
{
<script src="@Url.Content("~/Scripts/Login.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/sha256.js")" type="text/javascript"></script>
}
<form action="@Href("~/Accounts/Login")" method="post" id="loginForm">
<input type="text" name="name" id="name"/> Name <br/>
<input type="password" name="password" id="password"/> Password <br/>
<input type="hidden" name="nonce" id="nonce" value="@Model"/>
<input type="hidden" name="hash" id="hash" value="hash"/>
<input type="button" onclick="getPasswordHash('password', 'nonce', 'hash');
$('#loginForm').submit()" value = "Login" />
</form>
问题是当我按下登录时没有任何反应。页面不刷新。它表现得像我点击什么都没有。
编辑:我现在已经检查了Chrome开发人员工具中的来源。它告诉我未被引用的引用错误:getPasswordHash未定义http://i.imgur.com/LOW9E0f.png
提前致谢。
答案 0 :(得分:0)
您需要一个包含用户的数据库。要创建数据库,请打开管理器控制台并键入Enable-Migrations -ContextTypeName [ContextClassName]
,这应创建一个迁移文件夹,然后您需要在登录前注册用户。
编辑:确保您在帐户控制器中有一个登录功能