C#asp.net:jquery可搜索下拉列表中的焦点错误

时间:2013-08-19 08:22:20

标签: c# jquery asp.net

大家好,我正在尝试在我的asp.net项目中使用jquery搜索下拉列表。使用一天后,我遇到了一些问题,我已经尝试过研究,但无法修复。下面,我创建一个小项目来演示我的问题: https://app.box.com/s/u56motrehqii5g9spdbq

页面焦点工作正常,直到我放置可搜索的下拉脚本,在搜索和选择项目的类型后,我按Tab键聚焦到我的文本框下面,但焦点更改为我的gridview标题列。

我的页面

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="Default" Title="Untitled Page" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:DropDownList runat="server" ID="cboData" TabIndex="1">
                    <Items>
                        <asp:ListItem Value="A"></asp:ListItem>
                        <asp:ListItem Value="B"></asp:ListItem>
                    </Items>
                </asp:DropDownList>
                <asp:TextBox runat="server" ID="txtData" TabIndex="2"></asp:TextBox>
                <asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="True">
                </asp:GridView>
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
</asp:Content>

我的.aspx.cs(仅用于输入样本数据)

#region

using System;
using System.Data;
using System.Web.UI;

#endregion

public partial class Default : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("Column1");
        dt.Columns.Add("Column2");
        dt.Rows.Add(1, "CCC");
        dt.Rows.Add(2, "DDD");
        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
}

我的母版页

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<script src="JS/jquery-1.4.2.min.js" type="text/javascript"></script>

<script src="JS/jquery.searchabledropdown-1.0.8.min.js" type="text/javascript"></script>
<script language="javascript">
    var flag = false;
    // Load for page, run once in ajax, run every page load in normal page
    $(document).ready(function () {
        $("select").searchable();
    });
    // Load run each ajax callback 
    function pageLoad() {
        if (flag==false) {
            $("select").searchable();
        } else {
            flag = false;
        }
    };
</script>
<head runat="server">
    <title>Untitled Page</title>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
        </asp:ContentPlaceHolder>
    </div>
    </form>
</body>
</html>

请帮助,抱歉任何不方便,这是我在stackoverflow中的第一篇文章。

1 个答案:

答案 0 :(得分:-1)

我升级了jQuery,它解决了我的问题。谢谢罗伯特