3

問題は、 rs.getString (1) が整数の場合にコードが機能することですが、私の場合は varchar 主キー です。これを修正する方法。

function getId(id){
    var f=document.form;
    f.method="post";
    f.action='SelectBank1.jsp?id='+id;
    f.submit();
}

<%
Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery("select IdwhichIsVarchar, description from  SomeDataBase where IS_VISIBLE = 1 order by description  ");
%>

<%
while(rs.next()){
%>
<tr><td><%=rs.getString(2)%></td>

<td><input type="button" name="edit" value="Edit" style="background-color:green;font-weight:bold;color:white;" onclick="getId(<%=rs.getString(1)%>);" ></td>
</tr>
<%
}
%>
4

1 に答える 1

1

値を引用符で囲む必要があります。

onclick="getId('<%=rs.getString(1)%>')"

そうしないと、たとえば次のような出力が得られます。

onclick="getId(foo)"

また、JavaScript は「foo」を変数として解析しようとするため、失敗します。修正により、次のようになります。

onclick="getId('foo')"

そして、「foo」は文字列として関数に渡されます。

于 2012-12-05T07:42:16.767 に答える