0

簡単なことをしたいです。

サーブレットがあります。関数内DoPost()では、ブラウザーに表示されるHTML出力を記述しています。このHTMLには単一の画像が含まれています。この画像をクリックすると、その要素IDを通知したいと思います。

サーブレット:

public void printSinglePlayerBoard(int i_PlayerNumber, HttpServletResponse respose)
throws IOException
{
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html>\n");
    out.println("<script language='javascript' type='text/javascript'
    src='functions.js'></script>\n");
    out.println("<body>\n");
    out.print("<img id='someID' src='somePath' onclick='func(someID)'/>");
    out.print("</form>\n</body>\n</html>\n");
}

関数.js:

function func(someID)
{
    alert(someID);
    var x = document.getElementById(someID);
    alert(x);
}

私の問題は、文字列を取得したいのですsomeIDが、どちらもalert(someID)結果をalert(x)返さないことです。問題であると想定されるのは?

alert(someID)->戻ります[Object HTMLImageElement]

alert(x)->戻りますnull

Functions.jsは、サーブレットで作成されたHTML要素も認識しますか?

ありがとうございました!

4

1 に答える 1

1

この行を変更

out.print("<img id='someID' src='somePath' onclick='func(someID)'/>");

out.print("<img id='someID' src='somePath' onclick='func(\"someID\")'/>");
于 2012-07-24T19:28:48.383 に答える