【问题标题】:Get selected text from drop-down list asp.net从下拉列表 asp.net 中获取选定的文本
【发布时间】:2016-09-13 16:51:47
【问题描述】:

如何从下拉列表中获取选定的文本?在将我钉在十字架上要求复制之前,我已阅读: Get selected text from a drop-down list (select box) using jQuery 和 Get selected text from a drop-down list (select box) using jQuery 并从这些页面尝试了以下代码变体:

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

alert($get("[id*='DDLsuburb'] :selected"));
alert($("[id*='DDLsuburb'] :selected"));
alert($get("#DDLsuburb option:selected"));
alert($get("DDLsuburb option:selected"));
alert($get("#DDLsuburb :selected").text());
alert($get("DDLsuburb :selected").text());
alert($get("DDLSuburb", Text));
alert($get(DDLSuburb, Text).toString());
alert($get("DDLSuburb", Text).toString());
alert($get("DDLSuburb").html());
alert($get("DDLSuburb :selected").html());
alert($get("DDLSuburb option:selected").html());
alert($get(DDLSuburb).textContent());
alert($get(DDLSuburb).innerHTML());
alert($get(DDLSuburb).innerHTML.toString());
alert($get("DDLSuburb").text());
alert($get("DDLSuburb").valueOf("DDLSuburb"));
alert($get("DDLSuburb").valueOf());

注意事项: 1. 我正在使用警报进行故障排除。 2. 我知道第一部分应该是($get("DDLSuburb"),而不是不带引号的选项。 Visual Studio 2015,ASP.net。

编辑:尝试通过单击按钮来引发警报:

<input type="button" value="Get Postcode" onclick="onClick()" />
 <script type="text/javascript">
    var onClick = function () {
        alert($get("DDLSuburb")...);
        }

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    试试

    <script type="text/javascript">
        $(document).ready(function () {
            $("#<%=DDLSuburb.ClientID %>").change(function (e) {
                alert($("#<%=DDLSuburb.ClientID %> option:selected").text());
            });
        });
    </script>
    

    之所以使用&lt;%=DDLSuburb.ClientID %&gt;,是因为在HTML 中,ID DDLSuburb 被翻译成ctl00$mainContentPane$DDLSuburb 之类的东西,以确保页面上的唯一ID。这就是你的 JavaScript 找不到它的原因。

    或者你可以使用DropDown中的属性ClientIDMode="Static"来保持HTML中的ID名称相同,但我不推荐这样做。

    【讨论】:

    • 感谢您的建议,在 Chrome 中收到此错误:Uncaught TypeError: Cannot read property 'text' of null
    • 它在这里工作,在 Chrome、FF 等中。检查是否没有拼写错误。
    • 对不起,应该提到我正在使用按钮单击来引发警报窗口。我复制并粘贴了您所写的内容。我收到此错误:Uncaught TypeError: $ is not a function。另外,我必须写alert($get...否则我会得到一个空错误(这是我唯一改变的部分)
    • 你的页面上有 jQuery 吗?如果是这样,请尝试将$ 替换为jQuery,例如jQuery(document).ready
    • 没问题,我们是来帮助和学习的。在 HTML 页面&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"&gt;&lt;/script&gt; 的&lt;head&gt; 中添加这一行。欲了解更多信息,请访问jquery.com
    【解决方案2】:

    此代码用于使用 jQuery 显示所选项目。 ddlItem 是下拉列表的 id。

    <script>
        $(document).ready(function () {
            $("#ddlItem").change(function () {
                var ddlItem = document.getElementById("<%= ddlItem.ClientID %>");
                var selectedText1= ddlItem.options[ddlItem.selectedIndex].innerHTML;
    
                alert("You selected :" + selectedText1);
    
            });
        });
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-15
      相关资源
      最近更新 更多