I need JavaScript array/multidimensional which is returned by Java class,
<script type="text/javascript">
var strComboValue = <%=DBComboOptions.getOptions(combos)%>;
</script>
Here, strComboValue is a JavaScript variable and the DBComboOptions.getOptions(combos) returns array in Java class. Now I want that array in JavaScript.
Just let Java/JSP print a syntactically valid JS array syntax. Keep in mind that Java/JSP and JavaScript doesn’t run in sync. Java/JSP produces HTML as one large
Stringand JS is just part of it. JS ultimately runs in the webbrowser once it has retrieved all that HTML output from Java/JSP.Assuming that you ultimately want the following valid JS array syntax:
Then you should write your Java/JSP code accordingly so that it prints exactly that syntax:
It’s only terribly unreadable (and not only because of using old fashioned scriptlets instead of taglibs). Easier, however, is to grab a JSON (JavaScript Object Notation) library like Google Gson and create an additional method
getOptionsAsJson()which does something like the following:And finally use it instead: