asp中怎么给include的内容传递参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp中怎么给include的内容传递参数相关的知识,希望对你有一定的参考价值。
传不了的。一个ASP页面中,include的文件是最先执行的,但事实上,服务器只是把include的文件代码提取出来复制到ASP文件中标有<!--#include...-->的地方,然后ASP才开始运行。也就是说include中的代码并不是单独执行的,而是拼接到ASP文件中才开始运行的,所以给include传递参数是没有实际意义的。如果非要传递参数,可以把参数直接写在ASP文件中include之前即可,比如:
......
x = 123 \'这是要传递的参数
<!--#include file="......"-->
aaaaa \'asp中的语句
bbbbbb \'asp中的语句
cccc \'asp中的语句
...... 参考技术A 第一个页面为send.aspx,第二个页面为receive.aspx 1、通过URL链接地址传递 (1) send.asp代码 代码如下: protected void Button1_Click(object sender, EventArgs e) Request.Redirect("Default2.aspx?username=honge");
JQuery 不会将任何内容传递给 ASP.NET 控制器
【中文标题】JQuery 不会将任何内容传递给 ASP.NET 控制器【英文标题】:JQuery won't pass anything to ASP.NET Controller 【发布时间】:2012-11-30 19:11:58 【问题描述】:我已经使用了两天了,搜索和尝试。但我仍然无法实现我的目标:
将一个 Jquery 对话框滑块值传递给控制器。
前端:
@model TheMoodApp.Models.tbl_user
@
ViewBag.Title = "ControlPanel";
Layout = "~/Views/Shared/_Layout.cshtml";
<h2>@Html.DisplayFor(u=>u.Forename)'s Control Panel</h2>
@* Adding header stuff for control panel *@
@section DialogControlPanel
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.8.3.js"/>
<script src="https://raw.github.com/brandonaaron/bgiframe/master/jquery.bgiframe.js"/>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"/>
<script src="~/Scripts/MoodAppScripts.js"/>
<link href="~/Content/MoodApp.css" rel="stylesheet" />
@*The dialog for set initial mood*@
<div id="dialog-modal" title="Hi @Html.DisplayFor(u=>u.Forename)<br/>How do U feel 2Day?">
<header id="InitialMoodHeader">
<p>Set UR Mood
<input type="text" id="DisplayMood" readonly="readonly"/>
</p>
</header>
<section id="InitialMoodSlider">
<div id="MoodSlider"></div>
</section>
</div>
Javascript 文件:
$(document).ready(
function ()
$("#dialog-modal").dialog(
height: 140,
modal: true,
buttons:
"This is my Mood": function ()
$.ajax(
url: '@Url.Action("User", "CheckInMood")',
data: JSON.stringify( mood: $("#DisplayMood").val() ),
type: 'POST',
contentType: 'application/json; charset=utf-8',
);
$(this).dialog("close");
);
$("#MoodSlider").slider(
//TODO: IMPLEMENT JSON TO GET MOOD; ATM FEATURE IS FIXED.
range: "max",
min: 0,//scales minimum
max: 3,//scales maximum
value: 2,//default value
slide: function (event, ui)
$("#DisplayMood").val(ui.value);//get value from slider and display it
);
$("#DisplayMood").val(
$("#MoodSlider").slider("value")
);//set input value from slider
);
控制器:
[HttpPost]
public JsonResult CheckInMood(string mood)
//current user checks in with current mood
uint i = Convert.ToUInt16(mood);
return Json(View());
有人可以帮助我,让这个工作,并向我解释我做错了什么吗?
提前致谢
//敲门
【问题讨论】:
如果您使用浏览器的调试器工具检查 ajax 调用,发送到服务器的值是多少? null、未定义等? 实际上它给了我一个 404 localhost:50670/User/ControlPanel/… ajax 的 url 部分不应该定义我调用后要使用的 url(控制器)吗? 【参考方案1】:@Url.Action 只能在 razor 文件本身中使用,在脚本标签中等等,现在还有什么地方? (澄清一下)
【讨论】:
【参考方案2】:您的 JavaScript 文件中似乎包含 Razor 代码:@Url.Action("User", "CheckInMood")
。
由于这是一个 javascript 文件,因此 Razor 不会用于呈现该值,因此会将其视为文字。
您需要做的是将 URL 从您的视图传递到 JavaScript。
【讨论】:
当然可以。事实上,奎蒂让我明白了方向。我将 url 更改为“../CheckInMood”,告诉控制器(用户)使用另一种方法(CheckInMood)而不是当前的(ControlPanel)。【参考方案3】:改变:
data: JSON.stringify( mood: $("#DisplayMood").val() )
到:
data: mood: JSON.stringify($("#DisplayMood").val())
你需要字符串化参数的值,而不是参数名。
【讨论】:
以上是关于asp中怎么给include的内容传递参数的主要内容,如果未能解决你的问题,请参考以下文章
如何将文件中的其他参数从 Angular 传递给 ASP.NET Core 控制器?