Asp.net 如何在javascript提交的ashx页面上获取值

Asp.net 如何在javascript提交的ashx页面上获取值,asp.net,Asp.net,我有一个aspx页面,从中我发布的表单如下 var form = document.createElement("form"); form.setAttribute("method", 'post'); form.setAttribute("action", '/my.ashx'); var field = document.createElement("input"); f

我有一个aspx页面,从中我发布的表单如下

            var form = document.createElement("form");
            form.setAttribute("method", 'post');
            form.setAttribute("action", '/my.ashx');

            var field = document.createElement("input");
            field.setAttribute("type", "hidden");
            field.setAttribute("name", 'myVal');
            field.setAttribute("value", "1234627373737377");
            form.appendChild(field);

            document.body.appendChild(form);
            form.submit();
我正在尝试通过使用访问我的.ashx页面上的myVal
var myValue=context.Request[“myVal”];但我得到的是空值。

请在.ashx页面上尝试此操作:

HtmlInputHidden input = PreviousPage.FindControl("myVal") as HtmlInputHidden;
string previousValue = input.Value;
在页面顶部包括部件参考:

using System.Web.UI.HtmlControls;
虽然没有经过测试,但希望它能起作用。

试试看

myValue = context.Request.Form["myVal"]
Udpated:


缺少form
form.setAttribute(“enctype”,“multipart/form data”)的属性
如果不设置,则不会填充
请求
中的表单变量

在提交时添加:
field.setAttribute(“id”,“myVal”)


然后像这样访问它:
myValue=context.Request.Form[“myVal”]

显示当前上下文中不存在“上一页”的错误,如果您可以稍微更改技术?将input元素放在html页面中,而不是创建隐藏的输入类型。然后测试它是否有效<代码>
使用了仍然不工作的var form=document.createElement(“表单”);setAttribute(“enctype”,“多部分/表单数据”);form.setAttribute(“方法”,“post”);form.setAttribute(“action”、'/my.ashx');var字段=document.createElement(“输入”);field.setAttribute(“类型”、“隐藏”);field.setAttribute(“名称”,“myVal”);setAttribute(“值”,“1234567890”);表单。追加子项(字段);文件.正文.附件(表格);form.submit()在接收请求时尝试在处理程序中调试。检查您的请求是否已初始化表单属性。休息对我来说很好。
setAttribute
闻起来很可疑。我将尝试直接设置属性,如以下示例所示。1) 2)