Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 剑道用户界面下拉列表松动状态_Javascript_C#_Jquery_Asp.net_Kendo Ui - Fatal编程技术网

Javascript 剑道用户界面下拉列表松动状态

Javascript 剑道用户界面下拉列表松动状态,javascript,c#,jquery,asp.net,kendo-ui,Javascript,C#,Jquery,Asp.net,Kendo Ui,我有两个Kendo UI Web下拉列表,一个是客户端绑定,一个是静态值: <select runat="server" id="ddlCheckStatic" class="k-dropdown" style="width: auto"> <option value="One">One</option> <option value="Two">Two</option> <option value="Three"

我有两个Kendo UI Web下拉列表,一个是客户端绑定,一个是静态值:

<select runat="server" id="ddlCheckStatic" class="k-dropdown" style="width: auto">
   <option value="One">One</option>
   <option value="Two">Two</option>
   <option value="Three">Three</option>
</select>
<select runat="server" id="ddlCheckdynamic" class="k-dropdown" style="width: auto">
</select>

<script>
 $("#ddlCheckStatic").kendoDropDownList();

 var data =
    [
      { text: "Black", Id: "1" },
      { text: "Orange", Id: "2" },
      { text: "Grey", Id: "3" }
    ];

  $("#ddlCheck").kendoDropDownList({
    dataValueField: "Id",
    dataTextField: "text",
    dataSource: data
  });
</script>
现在,静态下拉列表(即ddlCheckStatic在回发上保持其状态,并且在btn\u单击中也可以访问其所选值,但动态下拉列表(即ddlCheckdynamic)不会发生同样的情况。 是否也有同样的行为可以从动态中得到

更新 若像下面这样从服务器端绑定值,那个么控件将保持其状态

protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Black", Value = "1" });
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Orange", Value = "2" });
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Grey", Value = "3" });
   }
}

您无法从服务器端访问从客户端生成的项目,因为将项目添加到select时,ASPNET不会收到此通知,并且不存在正确的.Net HTML标记。是的,我还知道这是我遇到的问题。但是剑道中有什么解决方案吗?我认为从下拉列表中检索所选值的唯一方法是使用javascript:当选择值时,设置一个隐藏字段,然后在服务器端检索它。
protected void btn_Click(object sender, EventArgs e)
{
  string _static = ddlCheckStatic.Value; // Working great :)
  string _dynamic = ddlCheckdynamic.Value; // Is blank everytime :(
}
protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Black", Value = "1" });
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Orange", Value = "2" });
     ddlCheckDynamic.Items.Add(new System.Web.UI.WebControls.ListItem() { Text = "Grey", Value = "3" });
   }
}