2017-06-06 27 views
8

html ve Javascript ile bir ComboBox oluşturmaya çalışıyorum. Bu yüzden bu bağlantı ile fikri başlatmalıyım. MultiSelect Combo (MultiSelect ComboBox)Javascript'ten dinamik bir bileşen nasıl oluşturulur

Bu linkte tüm kaynakları alıp yerel bölgeme yerleştirdim ve istenen sonucu aldım.

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <title>Custom Format in ComboBox - jQuery EasyUI Demo</title> 
    <link rel="stylesheet" type="text/css" href="CSS/easyui.css"> 
    <script type="text/javascript" src="JS/jquery.min.js"></script> 
    <script type="text/javascript" src="JS/jquery.easyui.min.js"></script> 
</head> 
<body> 
    <h2>Custom Format in ComboBox</h2> 
    <p>This sample shows how to custom the format of list item.</p> 
    <div style="margin:20px 0"></div> 
    <div style="margin-bottom:20px"> 
      <input class="easyui-combobox" name="language" style="width:26%;" data-options=" 
        url: 'JSON/combobox_data1.json', 
        method: 'get', 
        valueField: 'id', 
        textField: 'text', 
        panelWidth: 350, 
        multiple:true, 
        formatter: formatItem, 
        label: 'Language:', 
        labelPosition: 'top' 
        "> 
     </div> 
    <script type="text/javascript"> 
     function formatItem(row){ 
      var s = '<span style="font-weight:bold">' + row.text + '</span><br/>' + 
        '<span style="color:#888">' + row.desc + '</span>'; 
      return s; 
     } 
    </script> 
</body> 
</html> 

Şimdi benim Inputbox Dinamik olmak istiyorum, Ben yerde kullanabilir ve div ve diğerlerini geçerek zaman herhangi bir sayıda gerekli özelliklerdir. Burada çalıştığım şey


index.html

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <title>Custom Format in ComboBox - jQuery EasyUI Demo</title> 
    <link rel="stylesheet" type="text/css" href="CSS/easyui.css"> 
    <script type="text/javascript" src="JS/jquery.min.js"></script> 
    <script type="text/javascript" src="JS/jquery.easyui.min.js"></script> 
    <script type="text/javascript" src="JS/NewCombo.js"></script> 
</head> 
<body> 
    <h2>Custom Format in ComboBox</h2> 
    <p>This sample shows how to custom the format of list item.</p> 
    <div style="margin:20px 0"></div> 
    <script type="text/javascript"> 
     var myCombo = new NewCombo({ 
      url: 'JSON/combobox_data1.json', 
      method: 'get', 
      valueField: 'id', 
      textField: 'text', 
      panelWidth: 350, 
      multiple:true, 
      //formatter: formatItem, 
      label: 'Language:', 
      }); 
    </script> 
</body> 
</html> 

Ve JS Kod Js Kod

Karşılıklı chalanges Ne
NewCombo = function(args){ 
    var mydiv = "<div style="margin-bottom:20px">"+" 
      <input class="easyui-combobox" name="language" style="width:26%;" data-options=" 
        url: 'JSON/combobox_data1.json',\ 
        method: 'get',\ 
        valueField: 'id',\ 
        textField: 'text',\ 
        panelWidth: 350,\ 
        multiple:true,\ 
        formatter: formatItem,\ 
        label: 'Language:',\ 
        labelPosition: 'top'\ 
        ">"+" 
     </div>" 
} 

ut

  1. Değil mümkün olduğu Hataya neden olan doğru giriş etiketi elemanı oluşturmak için.

İşte örnek: İlk durumda

:

giriş etiketi ikinci vaka giriş etiketinde

"<input class="easyui-combobox" name="language" style="width:100%;" data-options="url: "JSON/combobox_data1.json",method: "get",valueField: "id",textField: "text",     panelWidth: 350,multiple:true,label: "Language:",labelPosition: "top">" 

olduğu:

"<div id="chart_line" style="width:26%; background-color: lightblue;"><input class="easyui-combobox" name="language" style="width:100%;" data-options="     url: " json="" combobox_data1.json",="" method:="" "get",="" valuefield:="" "id",="" textfield:="" "text",="" panelwidth:="" 350,="" multiple:true,="" label:="" "language:",="" labelposition:="" "top"=""></div>" 

Şimdi bana nasıl yardım edin Bunu düzeltmek için.

+0

Sen jquery kullanabilirsiniz komut önemlidir $ ("# divId") ile div id html eklemek için bir seçenek vardır. html ("") – Profstyle

+0

JS kodumda? – David

+0

evet, ancak önce alınmadığı takdirde jQuery kütüphanesini içe aktarmanız gerekiyor! – Profstyle

cevap

11

dinamik bir data-options özelliği eklemelerini setAttribute yöntemi kullanarak deneyin: gibi yazmak

document.getElementById('combobox1').setAttribute('data-options', '{GENERATED OPTIONS}'); 
+0

Teşekkürler. Bu işe yarıyor :) – David

-1
var modelNavBar = '<div class=\"modal fade\" id=\"createNewAppt\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"myModalLabel\"> \ 
    <div class=\"modal-dialog\" role=\"document\"> \ 
     <div class=\"modal-content\"> \ 
      <div class=\"modal-header\"> \ 
       <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button> \ 
       <h4 class=\"modal-title\" id=\"myModalLabel\">Create New Appointment Slot</h4> \ 
      </div> \; 

i komut kodlama düşünen bazı missing..this ..... u yanlış şekilde var edilir Bu ...... tek tırnak ve çift tırnak,

İlgili konular