不从下拉菜单中获取当前文本的代码背后

马蒂亚斯

我的按钮和下拉菜单有问题,当我单击按钮并在后面的代码中调用一个方法时,后面的代码不是采用下拉菜单的当前文本,而是采用刷新网站后的文本。的aspx代码是:

<form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager" EnablePageMethods="true" runat="server" />
<div>
    <table runat="server" id="showDBTable">
        <tr>
            <td>
                <asp:Button ID="showDB" runat="server" OnClick="showDBContent" Text="Show database content" />
            </td>
            <td>
                <asp:DropDownList runat="server" ID="showDBDropDown" OnLoad="FindExistingMetaTag" />
            </td>
        </tr>
    </table>
</div>
</form>

以及后面的代码:

protected void showDBContent(object sender, EventArgs e)
{
    String queryString = "";
    if (showDBDropDown.Text == "Show all")
    {
        queryString = "SELECT * from dbo.Search";
    }
    else
    {
        queryString = "SELECT * from dbo.Search where Tag = '" + (showDBDropDown.Text).TrimStart().TrimEnd() + "'";
    }

我该如何解决?

编辑-根据要求:

    protected void FindExistingMetaTag(object sender, EventArgs e)
{
    String queryString = "SELECT TAG from dbo.Tags";
    List<String> tagsShow = new List<String>();
    tagsShow.Add("Show all");
    using (SqlConnection conn = new SqlConnection(info.connectionString))
    using (var cmd = conn.CreateCommand())
    {
        conn.Open();
        cmd.CommandText = queryString;
        using (SqlDataReader reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                tagsShow.Add(reader.GetString(0));
            }
        }
    }

    showDBDropDown.DataSource = tagsShow;
    showDBDropDown.DataBind();
    showDBDropDown.SelectedIndex = 0;
}

我只是注意到它可能是“ showDBDropDown.SelectedIndex = 0;”,但是它似乎并没有改变任何东西来将其删除。

依卡德

我认为您需要从中删除该OnLoad属性showDBDropDown

<asp:DropDownList runat="server" ID="showDBDropDown" />

在第一次加载时填充showDBDropDowninPage_Load方法的内容,如下所示:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        BindDropdowns();
    }
}

private void BindDropdowns()
{
    String queryString = "SELECT TAG from dbo.Tags";
    List<String> tagsShow = new List<String>();
    tagsShow.Add("Show all");
    using (SqlConnection conn = new SqlConnection(info.connectionString))
    using (var cmd = conn.CreateCommand())
    {
        conn.Open();
        cmd.CommandText = queryString;
        using (SqlDataReader reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                tagsShow.Add(reader.GetString(0));
            }
        }
    }

    showDBDropDown.DataSource = tagsShow;
    showDBDropDown.DataBind();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用烧瓶从下拉菜单中获取值

来自分类Dev

Scrapy,从下拉菜单中抓取

来自分类Dev

在多重下拉菜单中,如何获取当前删除的值

来自分类Dev

从下拉菜单设置文本输入元素的值

来自分类Dev

从引导下拉菜单中获取选定的文本

来自分类Dev

如何使用php从下拉菜单中获取所选项目的值

来自分类Dev

从下拉菜单中获取值后,可以将其与字符串进行比较吗?

来自分类Dev

为什么我的AJAX请求没有从下拉菜单中获取正确的值?

来自分类Dev

jQuery自动完成接受而不从下拉菜单中选择

来自分类Dev

从下拉菜单中显示/隐藏,隐藏 div 中的新下拉菜单消失

来自分类Dev

使用jQuery从下拉菜单中显示/隐藏选项

来自分类Dev

如何从下拉菜单中读取对象

来自分类Dev

laravel从下拉菜单中删除重复项

来自分类Dev

无法从下拉菜单中传递选定的用户

来自分类Dev

jQuery-从下拉菜单中预选

来自分类Dev

使用JavaScript从下拉菜单中更改背景颜色

来自分类Dev

从下拉菜单更新mysql中的行

来自分类Dev

如何从下拉菜单PHP中的值查询行

来自分类Dev

如何测试从下拉菜单中单击并关闭的功能

来自分类Dev

从下拉菜单中抓取选定的值

来自分类Dev

从下拉菜单中找出点击的选项

来自分类Dev

在下拉菜单的当前所选选项之前获取选项的文本

来自分类Dev

验证下拉菜单中的文本

来自分类Dev

菜单栏下拉菜单从背景中获取文本

来自分类Dev

如何在当前菜单中创建下拉菜单

来自分类Dev

从多选下拉菜单中获取价值

来自分类Dev

从gridview的下拉菜单中获取价值

来自分类Dev

从下拉菜单重定向

来自分类Dev

从下拉菜单中选择值

Related 相关文章

热门标签

归档