C# 如何运行DropDownList更改事件

C# 如何运行DropDownList更改事件,c#,javascript,jquery,html,asp.net,C#,Javascript,Jquery,Html,Asp.net,您好,我正在尝试更改ddl。SelectedItem=1,我看到ddl的值正在更改,但事件ddl.change不起作用 $("#ctl00_PlaceHolderMain_AccountsDDL_ddlAccounts")[0].selectedIndex = 1; 这只是设置值,但我需要运行.change函数 有什么想法吗? 我在控制台all works thx中尝试了这一点,也许你知道我如何通过将PostData传递到HttpWebRequest来实现这一点 我在console all

您好,我正在尝试更改ddl。SelectedItem=1,我看到ddl的值正在更改,但事件ddl.change不起作用

$("#ctl00_PlaceHolderMain_AccountsDDL_ddlAccounts")[0].selectedIndex = 1; 
这只是设置值,但我需要运行.change函数

有什么想法吗?
我在控制台all works thx中尝试了这一点,也许你知道我如何通过将PostData传递到HttpWebRequest来实现这一点


我在console all works thx中尝试了这一点,也许您知道如何通过将PostData传递到HttpWebRequest来实现这一点 我添加了我的代码

HttpWebRequest postRequest = (HttpWebRequest)WebRequest.Create("https://www.com/Pages/current.aspx");
PostString += "ctl00$PlaceHolderMain$AccountsDDL$ddlAccounts=" + Number + "&";//Here
 byte[] byteArray = Encoding.ASCII.GetBytes(PostString);
    postRequest.ContentLength = byteArray.Length;
    Stream newStream = postRequest.GetRequestStream();
    newStream.Write(byteArray, 0, byteArray.Length);
    newStream.Close();
    HttpWebResponse postResponse = (HttpWebResponse)postRequest.GetResponse();

通过代码更改值时不会触发更改事件。您需要调用
change()
trigger(“change”)

作为补充说明,使用获取javascript中的元素,而不是使用硬编码的asp.net生成的客户端id

$("#<%= ddlAccounts.ClientID %>").change()
$(“#”)更改()

当通过代码更改值时,不会触发更改事件。您需要调用
change()
trigger(“change”)

作为补充说明,使用获取javascript中的元素,而不是使用硬编码的asp.net生成的客户端id

$("#<%= ddlAccounts.ClientID %>").change()
$(“#”)更改()
或者直接使用这个

$("[id$=ddlAccounts]").change();
使用$'以'结尾可以缩短选择器的名称

或仅使用此名称

$("[id$=ddlAccounts]").change();
 <script>
        $("select").change(function () {
            var str = "";
            $("select option:selected").each(function () {
                str += $(this).text() + " ";
                $("#DropDownList1")[0].selectedIndex = 5;
            });
            $("div").text(str);
        }).change();

    </script>
    <div></div>
使用$'以'结尾以'缩短选择器的名称


 <script>
        $("select").change(function () {
            var str = "";
            $("select option:selected").each(function () {
                str += $(this).text() + " ";
                $("#DropDownList1")[0].selectedIndex = 5;
            });
            $("div").text(str);
        }).change();

    </script>
    <div></div>
$(“选择”).change(函数(){ var str=“”; $(“选择选项:选定”)。每个(函数(){ str+=$(this).text()+“”; $(“#DropDownList1”)[0]。选择的索引=5; }); $(“div”).text(str); }).change();
试试这个。。。。它可能会帮助您


$(“选择”).change(函数(){
var str=“”;
$(“选择选项:选定”)。每个(函数(){
str+=$(this).text()+“”;
$(“#DropDownList1”)[0]。选择的索引=5;
});
$(“div”).text(str);
}).change();

试试这个。。。。它可以帮助您

使用
\u doPostBack('ctl00\u占位符main\u accountsdl\u ddlcounts','')
$(“#ctl00_占位符main_accountsdl_ddlAccounts”).change()
我在控制台all works thx中尝试了这一点,也许你知道如何通过将PostData传递到HttpWebRequest来实现这一点吗?使用
_doPostBack('ctl00_占位符main_accountsdl_ddl_accounts',”)
$(“#ctl00_占位符main_accountsdl_ddlAccounts”).change()
我在console all works thx中尝试了这一点,也许您知道如何通过将PostData传递到HttpWebRequest来实现这一点?Adil是正确的,如果值以编程方式(通过javascript)更改,则不会触发更改事件。
$(“[id$=“ddlAccounts”]”)
也可用于获取元素。是的,但我认为这是一种效率较低的方法,因为它必须搜索匹配的元素,而不是直接获取元素。
$(“#”)
如果脚本放在
.js
文件中,将无法工作。在这种情况下,
$(“#dllAccounts”)
可以与属性
clientdmode=“static”
一起用于
DropDownList
$(“[id$=”ddlAccounts”]”)一起使用,如果未设置
clientdmode
属性,则可以使用
。您能帮助我将数据发送到HttpWebRequest吗?我在topadi上添加了新代码是正确的,如果值以编程方式(通过javascript)更改,则不会触发更改事件。
$(“[id$=”ddlAccounts“])
也可以用于获取元素。是的,但我认为这是一种效率较低的方法,因为它必须搜索匹配的元素,而不是直接获取元素。
$(“#”)如果脚本放在
.js
文件中,
将不起作用。在这种情况下,
$(“#dllAccounts”)
可以与属性
clientdmode=“static”
一起用于
DropDownList
$(“[id$=”ddlAccounts“])
可以在未设置
clientdmode
属性的情况下使用。您能帮助我向HttpWebRequest发送数据吗?我在顶部添加了新代码