仅在select标记中显示javascript值

时间:2017-05-20 11:30:32

标签: javascript jquery json ajax

我有一个选择标签

<select id="pname">
    <option>saome data</option>
</select>

运行javascript函数后,我想在select标签中只显示javascript值,我试过这个,如下所示

    <script>
  function xyz() {

    $.ajax({
      url: 'abc.php',
      type: "get",
      cache: false,
      data: {
        cat: $('#xyzn').val()
      },
      success: function(response) {
        var myObject = JSON.parse(response);


        $('#pname').val(myObject.details[3]);
      }
    })

  }
</script>
像这样我使用javascript只显示javascript值,但它无法正常工作。 请帮助。

3 个答案:

答案 0 :(得分:0)

您可以使用jQuery附加选项标记。

试试这个

$('#pname').append("<option>"+myObject.details[3]+"</option>")

希望它有效

答案 1 :(得分:0)

我完全不了解您的问题,但我认为您想为从该文件中获取的数据做出选择。并且您想要删除其他选项。这可以通过以下方式完成:

$('#pname').html("<option>" + myObject.details[3] + "</option>");

如果您想保留现有数据,请使用:

$('#pname').append("<option>" + myObject.details[3] + "</option>");

答案 2 :(得分:0)

如果myObject.details[3]是一个数组,你可以遍历它并在那里附加你的值。

var myObject = JSON.parse(response);
myObject.details[3].forEach(function (val) {
    $('#pname').append($('<option>',
        {
            value: val,
            text: val
        }));
});

其他只是追加以下内容。

$('#pname').append($('<option>', {
    value: myObject.details[3],
    text: myObject.details[3]
}));