0

ArrayList 変数を含む JSP ページがあります。これらの配列リストの値 (txt1 と txt2) がスクリプト タグに必要です。多くの組み合わせとグーグルを試しましたが、成功しませんでした。

JavaScript 関数

function fun1()
{   
   // how to get arraylist values      
}

JSP ページ:

 <body>
       <%
           ArrayList<String> al= new ArrayList<String>();
           al.add("txt1");
           al.add("txt2");

           out.println("<input type=text id=" + al.get(0) + ">");out.println("<br>");
           out.println("<input type=text id= " + al.get(1) + ">");out.println("<br>");
           out.println("<input type=button id=btn1  value=click onClick=fun1(); > ");
       %>
 </body>

返信ありがとう

4

4 に答える 4

1

JavaScript内では、スクリプトレットを非常にうまく使用できます

リスト「arrayList」がJava(JSP)で[1,2,3,4]を持っていると仮定します

これで配列リストを取得できます

function fun1()
{   
   var list = '<%= arrayList %>';
}

変数リストを出力すると、値が「[1,2,3,4]」の文字列になります

次に、正規表現または単純な文字列操作を使用してこれを分割できます

<body>
       <%
           ArrayList<String> al= new ArrayList<String>();
           al.add("txt1");
           al.add("txt2");

           out.println("<input type=text id=" + al.get(0) + ">");out.println("<br>");
           out.println("<input type=text id= " + al.get(1) + ">");out.println("<br>");
           out.println("<input type=button id=btn1  value=click onClick=fun1(); > ");
       %>
 </body>

<script>
 // try the script here
</script>
于 2012-06-28T07:14:58.917 に答える
0

私は Java コードを別の場所に置きますが、JSP 内に置くことを主張する場合は、読み取り可能な HTML を使用し、<%=...%>次のようなものを使用して Java コンテンツのみを出力してみてください。

<%
  ArrayList<String> list = new ArrayList<String>();
  list.add("text1");
  list.add("text2");
%>

<body>

  <form ...>
    <input type="text" id="<%=list.get(0)%>" />
    <input type="text" id="<%=list.get(1)%>" />
    <input type="button" id="button1" value="Click" onclick="functionOne();" />
  </form>

  <script type="text/javascript">
    function functionOne() {
      alert(document.getElementById("<%=list.get(0)%>").value);
    }
  </script>
</body>
于 2012-06-28T07:28:28.307 に答える
0

このようなことを試してください。

<script>
var myArray=new Array();
myArray[0] = '<%= al.get(0) %>';
myArray[1] = '<%= al.get(1) %>';
<script>
于 2012-06-28T07:17:29.390 に答える
0

すべての値を保持する js の配列を作成するスクリプト タグを作成できます。私はjspに慣れていませんが、oyurコードに応じて次のようになります。

out.println("<script type='text/javascript'>");
out.println("var myJsArray = new Array();");
foreach(var arrayMember in al)
{
    out.println("myJsArray.push(" + arrayMember + ");");
}
out.println("</script>");

Jsでは、配列を使用するだけです:

function fun1()
{
    var firstArrayMember = myJsArray[0];
    // or whatever you want to do
}

特定の配列メンバーのキーがある場合は、連想配列を使用することもできます。

あなたがアイデアを得たことを願っています

于 2012-06-28T07:24:23.657 に答える