2013-10-29 140 views
1

我有一個jquery對話框,顯示覆選框。這些複選框是硬編碼的。現在我有一個需求,我需要從數據庫動態顯示覆選框。 要獲得的值用於從數據庫複選框我實現上window.load()動態添加複選框到jquery dilaogue框

$(window).load(function() { 
     $.ajax({ 
      type: 'GET', 
      url: 'Sites', 
      success: function(data) { 
       debugger; 
       var city=JSON.parse(data); 
      for(var i in city) 
      { 
       output ='<input type="checkbox" id="'+city[i]+'" name="'+city[i]+'" value="'+city[i]+'" />'+city[i]+'<br />' 
      } 
      console.log(output) 
      } 
     }); 
    }); 

這裏數據是存在於甲酸AJAX調用[孟買新德里,班加羅爾]並且該數據被從Java Servlet的retrived以arraylist的形式。

這裏是我的代碼來顯示對話框中的複選框,但複選框值是硬編碼,我需要從window.load數據動態顯示..Checkboxes名稱,ID和值應該是相同的從window.load獲得的值ajax調用..

這裏是我的jQuery腳本硬編碼..

var $dialog = $('<div></div>') 
     .html('<form id="myform" action="">'+output+'</form>') 
     .dialog({ 
      autoOpen: false, 
      title: 'Select Sites', 
      buttons: { 
       "Submit": function() { $('form#myform').submit();}, 
       "Cancel": function() {$(this).dialog("close");} 
      } 
     }); 
     }); 

這就是按一下按鈕中,我需要打開的對話框中..

$('#ssites').click(function(evt) { 
      variable=""; 
      $dialog.dialog('open'); 
      evt.preventDefault(); 
      // prevent the default action, e.g., following a link 
      return false; 
     }); 

任何幫助將得到高度讚賞。

回答

2

'試試這個..

$(window).load(function() { 
     $.ajax({ 
      type: 'GET', 
      url: 'Sites', 
      success: function(data) { 
       var city=data.city 
       for(var i in city) 
       { 
        var output='<input type="checkbox" id="'+city[i]+'" name="'+city[i]+'" value="'+city[i]+'" />'+city[i]+'<br />' 
       } 
       consoloe.log(output) 
      } 
     }); 
    }); 
+0

謝謝你爵士答案我有一個疑問如何採取無功輸出,並在對話框中使用.. – Adi

+0

在你的頁面上創建一個空白的div在輸出中獲得數據後,你可以追加到對話框中並打開對話框$('#dialog-confirm')。html(output); ('#dialog-confirm')。dialog('open'); –

+0

如果你有疑問提到這與我的答案你會得到主意http://stackoverflow.com/questions/3694693/how-to-have-jqueryui-dialog-box-dynamically-load-content –

0

1)創建空的獨特的div

<div id="content"></div>

2)加載並解析DB數據。取決於輸入格式 - HTML/JSON

success: function(data) { $("content").html(data); // or json parse }

3)#內容創建對話框