Jquery 如何使用location.href在视图之间传递数据?
我有两个Jquery 如何使用location.href在视图之间传递数据?,jquery,html,ajax,asp.net-mvc,Jquery,Html,Ajax,Asp.net Mvc,我有两个.cshtml文件。一个是我的登录页面,它是login.cshtml,我有一个主页,它是\u Layout.cshtml。当前,当我使用正确的信息登录时,它会将我发送到主页。那张支票的密码是 $('#submit').click(function(e) { //alert("NOW"); e.preventDefault(); var email = $('#inputEmail').val(); var passwo
.cshtml
文件。一个是我的登录页面,它是login.cshtml
,我有一个主页,它是\u Layout.cshtml
。当前,当我使用正确的信息登录时,它会将我发送到主页。那张支票的密码是
$('#submit').click(function(e) {
//alert("NOW");
e.preventDefault();
var email = $('#inputEmail').val();
var password = $('#inputPassword').val();
var json = { Email: email, Password: password };
var string = JSON.stringify(json);
//var url = 'http://www.uBuildRewards.api/api/Users/GetValid';
//url = 'proxy.php?url=' + url;
$.ajax({
url: 'http://uBuildRewards.api/api/Users/Post',
type: 'POST',
contentType: 'application/json',
dataType: "json",
crossDomain: true,
data: string,
success: function (data) {
var doug = data.FirstName; //Playing Around
var june = data.LastName; //Playing Around
location.href = '@Url.Action("Index", "Home")';
@*location.href = '@Url.Action("Index", "Home")?doug=data.FirstName';*@ //Playing Around
},
error: function (error) { alert('Wrong Info'); }
});
});
但是现在我想做的是将从登录中收到的“数据”传输到布局页面,这样我就可以显示Hello(登录者的姓名)并显示他或她的当前电子邮件地址。例如,将登录者的姓名和电子邮件放在(此处的姓名)
和(此处的电子邮件)
点中。我试过很多东西,但都不管用。我玩过的东西上面标有//playingaround
HTML
<div class="user-logged-in">
<div class="content">
<div class="user-name" id="firstName">(Name Here) <span class="text-muted f9">admin</span></div>
<div class="user-email" id="userEmail">(Email Here)</div>
<div class="user-actions">
<a class="m-r-5" href="">settings</a> <a href="/first/login">logout</a>
</div>
</div>
</div>
(姓名在这里)管理员
(电邮至此处)
我非常感谢你的帮助 我不熟悉ASP.NET,但我猜您可以使用JS/jQuery创建一个表单,然后将数据提交到布局中?因此,您可以将其添加到成功回调中
var $form=$(document.createElement('form')).css({display:'none'}).attr("method","POST").attr("action",'@Url.Action("Index", "Home")');
var $name=$(document.createElement('input')).attr('name','FIRST NAME HERE').val(data.FirstName);
var $email=$(document.createElement('input')).attr('name','EMAIL').val(data.Email);
$form.append($name).append($email);
$("body").append($form);
$form.submit();
类似于这一点的东西可能是一种解决方案。不确定这是否是最好的方法。你应该考虑看MVC如何运行这个教程。