s:选择用ajax响应填充

时间:2014-07-05 07:39:42

标签: javascript ajax struts2 dojo

以下响应来自Struts2的对象响应,我必须在s:select标签列表中填充它们。

   {"items":[{"label":"BAD CIRCUIT/POOR CONNECTION","key":1100009028300},{"label":"CRACK","key":1100009028340},{"label":"HIGH PRESSURE","key":1100009028260},{"label":"HIGH TEMPERATURE","key":1100009028380},{"label":"LACK OF POWER/NO DRIVE","key":1100009028280},{"label":"LEAKED","key":1100009028220},{"label":"LOOSE","key":1100009028320},{"label":"LOW PRESSURE","key":1100009028240},{"label":"MISSING OR INCOMPLETE","key":1100009028600},{"label":"PITTED/ERODED","key":1100009028360}],"identifier":"key"}

 <s:select id="faultFound"
                    list="#{}" name="faultFoundName" listKey="key" listValue = "label"  emptyOption="true"
                     value="%{destination.key.toString()}"
                     />

这是我的类似问题。但我需要将列表放在s:select by dojo。 spring3mvcportlet populate JSON dojo select

1 个答案:

答案 0 :(得分:0)

答案已更新:

在您的jsp文件中,您可以使用jquery填充组合框。

代码已更新:

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script> 
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/json3/3.3.2/json3.min.js"></script>
<s:select id="faultFound" list="#{}" name="faultFoundName"   
   listKey="key" listValue = "label"  emptyOption="true" 
    />
<script type="text/javascript">
$( document ).ready(function() {
    loadFaultDropDown();
    });

function loadFaultDropDown() {

        $.getJSON("getFaultsJsonURL", function(j) {
            var options = '<option value="' + "--Select--" + '">'
                    + "--Select--" + '</option>';

            for ( var i = 0; i < j.items.length; i++) {
                //alert(j.items[i].key);
                options += '<option value="' + j.items[i].key + '">'
                        + j.items[i].label + '</option>';
            }
            $("select#faultFound").html(options);

        });
    }
  </script>

注意:

  1. getFaultsJsonURL是您用于JSON数据检索的URL。
  2.   

    {&#34; items&#34;:[{&#34; key&#34;:&#34; 1100009028300&#34;,&#34; label&#34;:&#34; BAD CIRCUIT / POOR CONNECTION&#34;},{&#34; key&#34;:&#34; 1100009028260&#34;,&#34; label&#34;:&#34; HIGH PRESSURE&#34;},{&#34; key&#34;:&#34; 1100009028380&#34;,&#34; label&#34;:&#34; HIGH TEMPERATURE&#34;},{&#34; key&#34;:&#34; 1100009028280&# 34;,&#34;标签&#34;:&#34;缺乏动力/没有驾驶&#34;},{&#34;钥匙&#34;:&#34; 1100009028220&#34;,&#34;标签&#34;:&#34;泄漏&#34;},{&#34;键&#34;:&#34; 1100009028320&#34;&#34;标签&#34;:&#34; LOOSE&#34 ;},{&#34; key&#34;:&#34; 1100009028240&#34;,&#34; label&#34;:&#34; LOW PRESSURE&#34;},{&#34; key&#34 ;:&#34; 1100009028600&#34;,&#34; label&#34;:&#34; MISSING OR INCOMPLETE&#34;},{&#34; key&#34;:&#34; 1100009028360&#34; &#34;标签&#34;:&#34;蚀破坏/剥蚀&#34;}]}

    <强>输出:

    output