2014-10-29 158 views
0

我在我的父頁面有一個dropdwnlist控件 - ASP.NET C#,點擊按鈕後會彈出一個窗口,向控件添加新值。在asp.net中刷新父窗口彈出窗口c#

[+]

在彈出的頁面 - 保存按鈕,我有以下代碼:

Response.Write("<script>opener.loadOptionLandlord('" + stid + "','" + strLandlorconn_dbame + "');</script>"); 
Response.Write("<script>window.close();</script>"); 

其中loadOptionLandlord是我父頁面的函數:

function loadOptionLandlord(val,txt) 
     { 
      var opt = document.createElement('<option value="'+ val +'">'); 
      opt.innerText = txt; 
      var sCtrl = document.getElementById('<%= ddlLandlord.ClientID %>'); 

      sCtrl.options[sCtrl.options.length] = new Option(txt, val, false, true); 

     } 

該值將被保存到數據庫中,並且彈出窗口正在關閉,但新添加的數據不會刷新 下拉列表。 這適用於IE,但不適用於Chrome。

請幫忙..

+0

只有下拉列表控件需要刷新 – Lax 2014-10-29 05:44:09

+0

檢查您的控制檯沒有ü有任何錯誤? – 2014-10-29 05:54:25

+0

沒有..沒有.. – Lax 2014-10-29 05:56:14

回答

0

更改loadOptionLandlord如下

function loadOptionLandlord(val,txt) 
     { 
      var opt = document.createElement("option");    
      var sCtrl = document.getElementById('<%= ddlLandlord.ClientID %>').options.add(opt); 
      opt.text = txt; 
      opt.value = val; 
} 
+0

它適合你嗎? – prog1011 2014-10-29 06:49:13

+0

是的..它的工作..謝謝你的支持! – Lax 2014-10-29 07:56:24

0

你能檢查這個功能嗎?

function loadOptionLandlord(val,txt) 
     { 
      // Those create element not needed and its a wrong 
      // because you directly add option to select 
      //var opt = document.createElement('<option value="'+ val +'">'); 
      // opt.innerText = txt; 
      var sCtrl = document.getElementById('<%= ddlLandlord.ClientID %>'); 

      sCtrl.options[sCtrl.options.length] = new Option(txt, val, false, true); 

     } 

這裏是樣品的js添加選項上下拉JS BIN

+0

沒有它的不工作..實際上相同的代碼在IE中工作,但不是鉻。 – Lax 2014-10-29 06:13:30

+0

在javascript中還有其他代碼嗎? – Lax 2014-10-29 06:16:18