Javascript 如何使用JSON字符串化数据附加下拉列表

Javascript 如何使用JSON字符串化数据附加下拉列表,javascript,jquery,html,json,drop-down-menu,Javascript,Jquery,Html,Json,Drop Down Menu,我的结果如下。id和value {5702:7am-10am,5703:10am-1pm,5704:12pm- 下午3点,5705:3-6点,5706:6-9点,5707:7点- 10pm,5708:9pm-12am,5709:12am-7am,5730:AZRAAR 123} 如下所示 JSON.stringify(<?php echo $timeWindowJson ?>) 现在我有这个附加虚拟下拉列表 var array = selectedDates.split(",");

我的结果如下。id和value

{5702:7am-10am,5703:10am-1pm,5704:12pm- 下午3点,5705:3-6点,5706:6-9点,5707:7点- 10pm,5708:9pm-12am,5709:12am-7am,5730:AZRAAR 123}

如下所示

JSON.stringify(<?php echo $timeWindowJson ?>)
现在我有这个附加虚拟下拉列表

var array = selectedDates.split(",");
      var dynamicTable = "<table id='tbl_dynamic_call_dates'><tr><td>Appointment date</td><td>Client time window</td>";
      $.each(array, function(i) {
         dynamicTable += "<tr><td>" + array[i] + "</td><td>" + "<select><option value='volvo'>7am - 10am</option></select>" + "</td></tr>";
      });
      dynamicTable += "</table>";
      $("#div_outgoing_call_dates_rows").append(dynamicTable);
但我希望附加的下拉列表是这样的

<select name="CSSAtapsClient[gender_type_id]" class="long" id="gender_type_id">
<option value="">- - Select Gender - -</option>
<option value="5702">7am - 10am</option>
<option value="5703">10am - 1pm</option>
<option value="5704">12pm - 3pm</option>
。。。。。。直到所有值都从json字符串中添加

请稍候,您提供的字符串不是JSON。。。。你可以先改正它

示例JSON字符串应该如下所示

您可以在AJAX调用中尝试以下内容

success: function(data) {
            $('#state_id').html('').append('<option value="">- - Select State - -</option>');
            $.each(data, function(i, value) {
               $('#state_id').append('<option value="' + value.id + '">' + value.state + '</option>');
            });
            $('#state_id').trigger('change');
         }

请稍候,您提供的字符串不是JSON。。。。你可以先改正它

示例JSON字符串应该如下所示

您可以在AJAX调用中尝试以下内容

success: function(data) {
            $('#state_id').html('').append('<option value="">- - Select State - -</option>');
            $.each(data, function(i, value) {
               $('#state_id').append('<option value="' + value.id + '">' + value.state + '</option>');
            });
            $('#state_id').trigger('change');
         }

如果显示的数据不是正确的json,您可以尝试一下,因为它看起来不像json

var array = selectedDates.replace("{","").replace("}","").split(",");
var selectHTML = "<select><option value=''>--Select--</option>";
$.each(array, function(i,value) {
    selectHTML += "<option value='"+value.split("-")[0]+"'>"+value.split("-")[1]+"</option>";
});
selectHTML += "</select>";
var dynamicTable = "<table id='tbl_dynamic_call_dates'><tr><td>Appointment date</td><td>Client time window</td>";
$.each(array, function(i,value) {
 dynamicTable += "<tr><td>" + value.split("-")[0] + "</td><td>" + selectHTML + "</td></tr>";
});
dynamicTable += "</table>";
$("#div_outgoing_call_dates_rows").append(dynamicTable);

这应该适合您。

如果显示的数据不是正确的json,您可以尝试一下,因为它看起来不像json

var array = selectedDates.replace("{","").replace("}","").split(",");
var selectHTML = "<select><option value=''>--Select--</option>";
$.each(array, function(i,value) {
    selectHTML += "<option value='"+value.split("-")[0]+"'>"+value.split("-")[1]+"</option>";
});
selectHTML += "</select>";
var dynamicTable = "<table id='tbl_dynamic_call_dates'><tr><td>Appointment date</td><td>Client time window</td>";
$.each(array, function(i,value) {
 dynamicTable += "<tr><td>" + value.split("-")[0] + "</td><td>" + selectHTML + "</td></tr>";
});
dynamicTable += "</table>";
$("#div_outgoing_call_dates_rows").append(dynamicTable);
这应该适合您。

在您的HTML中:

<select id="gender_type_id">
  <option value="">- - Select Gender - -</option>
</select>
在Javascript中:

$.each(obj, function(key, value) {
  $('#gender_type_id').append('<option value="' + key + '">' + value + '</option>');
});
您调用的数组不是数组。它只是一个具有许多属性的JS对象。使用每种方法都很好,但是需要传递键和值,而不是传递元素和索引

.

在HTML中:

<select id="gender_type_id">
  <option value="">- - Select Gender - -</option>
</select>
在Javascript中:

$.each(obj, function(key, value) {
  $('#gender_type_id').append('<option value="' + key + '">' + value + '</option>');
});
您调用的数组不是数组。它只是一个具有许多属性的JS对象。使用每种方法都很好,但是需要传递键和值,而不是传递元素和索引


.

您不需要更改数据的结构。它是一个对象,每个对象都可以愉快地循环通过一个对象。您不需要更改数据的结构。它是一个对象,每个对象都可以愉快地循环通过一个对象。