如何在Jquery Asp.net中查找UserControls控件值?

我正在使用jQuery和ASP.net

我有一个用户控件,并希望将此用户控件的值设置为数据库,因为我需要用户控件的值。 以同样的方式,我想在用户控件中显示数据库中的数据,因为我需要通过jquery获取值。

在我的用户控件中,我有4个TextBoxes和2个按钮(SET / UPDATE)

AutoCompleteSearch_New是ascx用户控件

这是我尝试过的代码:

var ID = $('#').val(); 

但我不想使用隐藏的字段。

我可以直接找到控件的值而不使用隐藏字段吗?

它类似于webform的使用价值。

这是相同的代码。

  Var TextBoxValue = $('#YourTextBoxID').val(); 

检查元素并获取文本框ID并将其替换为YourTextBoxID

要么

 Var TextBoxValue = $('#<%= YourTextBoxID.ClientID').val(); 

其中YourTextBoxID是您的asp:Textbox ID。

当您在aspx页面中加载用户控件时,jquery会将其视为整个页面,它结合了用户控件和表单中存在的其余aspx控件。 因此,您可以直接在jquery中获取文本框值

你可以通过向Control添加ClientIDMode =“Static”来做到这一点

然后使用

 var txtvalue= $("#TextBoxId").val(); 

如果在Session中存储值不是一个选项,我看到的其他选项是:

  • 用户控件标记中的javascript变量声明
  • 客户端解密视图状态
  • html元素上的自定义数据属性

我担心HiddenField是你最好的选择。 这与ViewState背后的想法有些相同。

如果您不希望客户端篡改该值,您可以使用该值的组合,以及连接到密钥的值的哈希值(值+分隔符+哈希值(值+密钥))

如果您不希望客户端访问该值,您可以依赖于在HiddenField中对其进行加密

嘿,你可以直接找到文本框或隐藏字段的控制,而不提及它的类型

var value = $(’AutoCompleteSearch_New_hdnvalue’)。val();

这里AutoCompleteSearch_New是页面上加载的用户控件的名称

hdnvalue是用户控件AutoCompleteSearch_New中隐藏字段的ID

请享用.. :-)