【问题标题】:How to pass value from Jquery to Asp.net Code Behind File?如何将值从 Jquery 传递到文件后面的 Asp.net 代码?
【发布时间】:2015-09-23 11:36:46
【问题描述】:

我有单选按钮,我在每个单选按钮上存储了一些值

$(document).on('change', '.vEditTamplateId', function ()
{
        var vpath = "";
        $(".vEditTamplateId").each(function () {
            if ($(this).is(":checked") == true) {

                vpath = $(this).attr('idd');
                $('input[id$=hdnEmpName]').val(vpath);
            }
        })

});

这是它的代码..

我用过这个asp.net服务器端控件

<input type="hidden" id="hdnEmpName" runat="server" />

现在使用我使用的代码

            string vPath = hdnEmpName.Value;

我总是在这个中得到空值

请给我适当的建议..

【问题讨论】:

  • 你能用 css 类“vEditTamplateId”显示你迭代的元素的标记吗?还有,回发是怎么做的?

标签: jquery asp.net html c#-4.0


【解决方案1】:

简单方法

    function SearchText() {
        $(".autosuggest").autocomplete({
            source: function (request, response) {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "AutoSearchTest.asmx.cs/GetAutoCompleteData",
                    data: "{'username':'" + document.getElementById('txtSearch').value + "'}",
                    dataType: "json",
                    success: function (data) {
                        response($.map(data.d, function (item) {
                            return {
                                label: item.split('/')[0],
                                val: item.split('/')[1]
                            }
                        }));
                    },
                    error: function (xhr, status, error) {
                        alert("Error: " + xhr.responseText);
                    }
                });
            },
            select: function (event, ui) {
                $('#lblUserId').text(ui.item.val);
            }
        });
    }
[WebMethod]
public List<string> GetAutoCompleteData ( string username )
{
    List<string> result = new List<string>();
    using ( SqlConnection con = new SqlConnection( System.Configuration.ConfigurationManager.ConnectionStrings[ "ERP_ConnectionString" ].ToString() ) )
    {

        string query= "SELECT Code, [Description] from tablename Where Compcode = '01' and Description LIKE '%'+@SearchText+'%'";
        using ( SqlCommand cmd = new SqlCommand( query, con ) )
        {
            con.Open();
            cmd.Parameters.AddWithValue( "@SearchText", username );
            SqlDataReader dr = cmd.ExecuteReader();
            while ( dr.Read() )
            {
                result.Add( string.Format( "{0}/{1}", dr[ "Code" ], dr[ "Description" ] ) );
            }
        }
    }
    return result;
}

【讨论】:

  • 您能否添加一些解释,为什么这是正确的解决方案?代码可能很棒,但解释原因可能有助于解决原始问题。
  • 这与 OP 的问题有什么关系?
  • 只是将客户端值发送到服务器端寻求帮助
  • 显然 OP 并没有尝试使用 AJAX,只是尝试将值添加到隐藏字段。发布一个完全不相关的例子是没有帮助的。
猜你喜欢
  • 2012-06-22
  • 2020-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
  • 2015-01-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多