代码不适用于IE8和Mozilla Firefox

时间:2013-02-08 11:50:48

标签: javascript jquery html browser gson

我正在使用JSP& amp;开发一个Web应用程序。的servlet。

我正在使用 gson2.2.2

当我在google chrome 24.0.1312.57 m上运行以下代码时,它工作正常,但当我尝试在IE8Mozilla Firefox 3.6.13上运行相同的代码时,相同的代码却没有填写combobox

HTML:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Testing Browser</title>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>

<script>
$(document).ready(function() { 
        alert('in');
        //fill Salutation
        var $ul = $(SALUTATION);
        $.get('MyServlet?action=cmbSALUTATION', function(responseJson) {
            $.each(responseJson, function(index, item) {
                $('<option>').text(item).appendTo($ul);
            });
        });
    });
</script>
</head>

<body>
   <table>
       <tbody>
          <tr>
              <td>Salutation</td>
              <td><select name="SALUTATION" id="SALUTATION"> </select></td>
          </tr>
       </tbody>
   </table>
</body>
</html>

的Servlet

//COMBOBOX - Get the data for column SALUTATION
        if(request.getParameter("action")!=null)
        if(request.getParameter("action").equalsIgnoreCase("cmbSALUTATION"))
        {
            String s2[][] = select.getData("select TITLE_ID from CRM_TITLE");
            List<String> list = new ArrayList<String>();
            for(int i=0;i<s2.length;i++)
            {
                list.add(s2[i][0]);
            }
            String json = new Gson().toJson(list);
            response.setContentType("application/json");
            response.setCharacterEncoding("UTF-8");
            response.getWriter().write(json);
        }

如果我错过了什么,请告诉我。

提前致谢....

2 个答案:

答案 0 :(得分:0)

试试这个:

 var $ul = $('#SALUTATION'); // <----id selector
    $.get('MyServlet?action=cmbSALUTATION', function(responseJson) {
        $.each(responseJson, function(index, item) {
            $('<option />').text(item).val(index).appendTo($ul);
        });  //----^^^^^^-----------------------------try with this
    });

答案 1 :(得分:0)

尝试此链接jQuery Function。 IE中不支持大多数Jquery插件。 否则测试JavaScript lint错误。 JavaScript Online lint Error