【问题标题】:How to post params from javascript to asp.net?如何将参数从 javascript 发布到 asp.net?
【发布时间】:2009-05-04 14:46:51
【问题描述】:

我有一个 javascript 代码,它使用 2 个参数构建一个链接。

现在,我知道如何使用地址发布这些参数,但我不想使用它。

我尝试使用 cookie 来发布参数,但不知何故我无法在服务器端读取它们。

这是客户端代码

document.cookie="name="+"value";

这是服务器端读取代码

string s = Response.Cookies[cookieName].Value;

你能帮帮我吗?

【问题讨论】:

    标签: c# javascript post


    【解决方案1】:

    创建一个迷你表单(不是 asp.NET Web 表单,只是一个简单的表单),其中包含两个名为参数的输入类型隐藏字段。之后创建一个链接或按钮,将其 onclick 事件 与 javascript 函数关联(例如:onclick="javascript:postIt();")。

    然后当用户单击按钮或链接时,该函数将替换这些参数的值,例如:

    document.miniform.parameter1.value = yourvalue1;
    document.miniform.parameter1.value = yourvalue2;
    document.miniform.submit();
    

    要将参数返回到代码中,请使用 Request.form("parameter1") 等等...

    【讨论】:

    • js代码在别的文件怎么办?他无法识别表格。
    • 然后通过参数将表单传递给函数。
    • 谢谢,我试过了,但现在我无法在服务器端访问表单的参数。这是我的新代码:客户端:
      表单> document.getElementById("name").value="value";服务器端:string[] lat = Request.Form.AllKeys;我什么也得不到!提前致谢。
    • 隐藏输入字段需要name属性,因为id不够post传递
      然后在服务器使用 string[] lat = Request.form("name") //仅此而已
    【解决方案2】:

    您可以使用Ajax Request 将数据发布到 ASP.NET 表单。

    要将数据发布到任何页面,您必须使用该页面的路径。至于你设置cookies的问题,只能被同域的页面使用。

    【讨论】:

    • 我会更具体地说:我不想发布数据,我想创建一个指向 anasp.net 页面的链接,当它点击来自客户端的数据时,将通过邮寄方式发送
    【解决方案3】:

    你在做一个 HTTP Post 吗?您可以在表单字段中发布这些值。我会使用隐藏的输入字段。您可以在标记中添加一个或通过 javascript 添加一个。

    您的另一个选择是使用某种 Ajax 并在帖子正文中传递 JSON 或 XML。

    Cookie 旨在跨页面和/或会话保存数据客户端。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-18
      • 2014-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-04
      相关资源
      最近更新 更多