0

我是开发和 JSP 的新手,我有一个学校项目要做。我有一个主要问题阻止我继续编码。

我的问题: 当用户单击按钮时,我试图在变量中执行放置。但实际上,变量值是列表中的最后一个值。换句话说,该onClick功能不起作用。

这是代码:

<input type = "submit" id = "buy" name = "buy" value="Buy this <% out.println(rs1.getString("items.item_maker"));%> Now!" onclick = <% car = rs1.getString("items.item_maker").toString(); %> >

有任何想法吗?

4

1 回答 1

0

这是不可能的,因为 JSP 是服务器端的。这意味着它在页面到达客户端之前执行。你的代码:

<input type = "submit" id = "buy" name = "buy" value="Buy this <% out.println(rs1.getString("items.item_maker"));%> Now!" onclick = <% car = rs1.getString("items.item_maker").toString(); %> >

将导致:

<input type = "submit" id = "buy" name = "buy" value="Buy this [string returned by rs1.getString("items.item_maker")] Now!" onclick = [result of rs1.getString("items.item_maker").toString();]>

但是,由于变量赋值不返回任何东西,这将变成

<input type = "submit" id = "buy" name = "buy" value="Buy this [string returned by rs1.getString("items.item_maker")] Now!" onclick = >

你看,一个空的 onclick 属性。编辑:我实际上是错的。分配对被分配的事物进行评估。这就是为什么像while ((line = br.readLine()) != null)工作这样的事情。

此外,该onclick属性仅接受将在单击时执行的 javaSCRIPT(您没有说)。所以让它空着意味着do nothing on click

PS 你错过了一个结束</input>标签,或者忘记/在 onclick 属性之后添加一个以使其成为自结束标签。

于 2012-11-24T18:47:26.147 回答