从html输入文本类型文本框获取值作为字符串,并将其传递给在aspx中使用的C#哈希表

时间:2015-12-08 09:52:30

标签: javascript c# html asp.net

文本框被定义为html输入文本类型,并从用户处获取输入。需要此值作为密钥传递给在aspx文件中使用的aspx.cs文件中定义的哈希表。但是没有给出正确的值并抛出异常。在这方面的任何帮助都会有所帮助。感谢

代码如下:

    <% =Hashtable[document.getElementbyId("Textbox").Value]%>

document.getElementbyId(“Textbox”)。值没有给出正确的输出。如果它被作为键的字符串值替换,那么它可以正常工作。唯一的问题是从文本框中获取字符串值。

2 个答案:

答案 0 :(得分:0)

首先在头部包含jquery

var supertest = require('supertest'),
  util = require('util');

var SccTest = function()
{
};

SccTest.prototype.__proto__ = supertest.prototype;

SccTest.expectHeaders = function (a)
{
  for (var header in a)
  {
    this._asserts.push(this._assertHeader.bind(this,
    {
      name: '' + header,
      value: a[header]
    }));
  }

  return this;
};

util.inherits(SccTest, supertest);
module.exports = SccTest;

尝试以下代码来阅读文本框值: 首先使用

读取文本框值
<script src="//code.jquery.com/jquery-1.10.2.js"></script>

并查看texbox中是否存在值(如果存在)使用此值来读取哈希值

var key = $("[id$=Textbox]").val();

答案 1 :(得分:0)

试试这个对我有用: aspx:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
       <script>
           function GetHashtable() {
               alert("<% = hashtable[this.test] %>");

            }

    </script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="txtKey" OnTextChanged="txtKey_TextChanged" AutoPostBack="true" runat="server"></asp:TextBox>
        </div>

    </form>
    <script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.min.js"></script>

</body>
</html>

代码背后:

public partial class _Default : System.Web.UI.Page
{
    protected int test;
    public Hashtable hashtable = new Hashtable();
    static Hashtable sHashtable = new Hashtable();
    protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            sHashtable[1] = "One";
            sHashtable[2] = "Two";
            sHashtable[13] = "Thirteen";
        }

    }
    protected void txtKey_TextChanged(object sender, EventArgs e)
    {
        test = Convert.ToInt32("0" + txtKey.Text);
        hashtable = sHashtable;
        Page.ClientScript.RegisterStartupScript(this.GetType(), "GetHashtable", "GetHashtable();", true);
    }
}