Java 从具有struts2的表中删除动态添加的行
我对这一点很陌生,我想知道如何从用struts2创建的动态表中获取索引行。以下是我迄今为止所尝试的: 测试文件Java 从具有struts2的表中删除动态添加的行,java,jsp,struts2,Java,Jsp,Struts2,我对这一点很陌生,我想知道如何从用struts2创建的动态表中获取索引行。以下是我迄今为止所尝试的: 测试文件 <table class="table table-bordered table-striped table-condensed table-hover" id="exp"> <thead> <tr> <th class="center"></th>
<table class="table table-bordered table-striped table-condensed table-hover"
id="exp">
<thead>
<tr>
<th class="center"></th>
<th>Name</th>
</tr>
</thead>
<tbody>
<s:if test="listanume.size>0">
<s:iterator value="listanume" status="statusVar">
<tr>
<td class="center">
<button class="btn" onclick="javascript:setval(0)">
delete
</button>
</td>
<td><s:property value="nume"/></td>
</tr>
</s:iterator>
</s:if>
</tbody>
</table>
<h4>Numarul randului este: <s:property value="mysample"/> </h4>
<script>
var mysample= '';
function= setval(varval){
mysample=varval;
alert(mysample);
}
</script>
<table class="table table-bordered table-striped table-condensed table-hover"
id="exp">
<thead>
<tr>
<th class="center"></th>
<th>Name</th>
</tr>
</thead>
<tbody>
<s:if test="listanume.size>0">
<s:iterator value="listanume" status="statusVar">
<tr>
<td class="center">
<button class="btn" id="<s:property value='indexrow'/>">
delete
</button>
</td>
<td><s:property value="nume"/></td>
</tr>
</s:iterator>
</s:if>
</tbody>
</table>
<i><p id="test"> No button pressed.</p></i>
<script>
$("button").click(function(e){
var idClicked = e.target.id;
$("#test").html(idClicked);
});
</script>
名称
删除
Numarul randului este:
var mysample='';
函数=setval(varval){
mysample=varval;
警惕(mysample);
}
流行java
public class Pop {
private int nrrow;
private List<UserModel> listanume = new ArrayList<UserModel>();
UserModel user = new UserModel(),
user1 = new UserModel(),
user2 = new UserModel();
private String[] sample;
{
sample = new String[]{"list1", "list2", "list3"};
}
public String execute() {
user.setEmail("eret@esre");
user.setPass1("1234");
user.setNume("gigel");
user1.setEmail("yuii@ihj");
user1.setPass1("6789");
user1.setNume("marius");
user2.setEmail("nmnn@cvx");
user2.setPass1("7676");
user2.setNume("sorin");
sample1.add(user);
sample1.add(user1);
sample1.add(user2);
return "succes";
}
public String afisnrow(){
execute();
listanume=sample1;
return "succes";
}
public String[] getSample() {
return sample;
}
public void setSample(String[] sample) {
this.sample = sample;
}
public List<UserModel> getSample1() {
return sample1;
}
public void setSample1(List<UserModel> sample1) {
this.sample1 = sample1;
}
public void setNrrow(int nrrow){
this.nrrow=nrrow;
}
public int getNrrow(){
return nrrow;
}
public List<UserModel> getListanume(){
return listanume;
}
public void setListanume(List<UserModel> listanume){
this.listanume=listanume;
}
}
public class Pop {
private int indexrow;
private List<UserModel> listanume = new ArrayList<UserModel>();
UserModel user = new UserModel(),
user1 = new UserModel(),
user2 = new UserModel();
public String execute() {
user.setEmail("eret@esre");
user.setPass1("1234");
user.setNume("gigel");
user1.setEmail("yuii@ihj");
user1.setPass1("6789");
user1.setNume("marius");
user2.setEmail("nmnn@cvx");
user2.setPass1("7676");
user2.setNume("sorin");
listanume.add(user);
listanume.add(user1);
listanume.add(user2);
return "succes";
}
public String afisnrow(){
execute();
for (UserModel userModel : listanume) {
UserModel userModel1=new UserModel();
indexrow++;
userModel1.setNume(userModel.getNume());
userModel1.setIndexrow(indexrow);
listanume.add(userModel1);
}
return "succes";
}
public List<UserModel> getListanume(){
return listanume;
}
public void setListanume(List<UserModel> listanume){
this.listanume=listanume;
}
}
公共类Pop{
私人住宅区;
私有列表列表名称=新的ArrayList();
UserModel user=new UserModel(),
user1=新的UserModel(),
user2=新的UserModel();
私有字符串[]样本;
{
sample=新字符串[]{“list1”、“list2”、“list3”};
}
公共字符串execute(){
user.setEmail(“eret@esre");
user.setPass1(“1234”);
user.setNume(“gigel”);
user1.setEmail(“yuii@ihj");
user1.setPass1(“6789”);
用户1.setNume(“马吕斯”);
user2.setEmail(“nmnn@cvx");
user2.setPass1(“7676”);
user2.setNume(“sorin”);
示例1.添加(用户);
sample1.add(user1);
sample1.add(user2);
返回“成功”;
}
公共字符串afisnrow(){
执行();
listanume=样本1;
返回“成功”;
}
公共字符串[]getSample(){
返回样品;
}
公共void设置示例(字符串[]示例){
这个样本=样本;
}
公共列表getSample1(){
返回样本1;
}
公共无效设置样本1(列表样本1){
this.sample1=sample1;
}
公共无效集合nrrow(int nrrow){
this.nrrow=nrrow;
}
public int getNrrow(){
返回nrrow;
}
公共列表getListanume(){
返回列表;
}
公共无效设置列表名称(列表列表名称){
this.listanume=listanume;
}
}
每一行上都有一个按钮,当我点击该按钮时,我需要获取行索引,我有点卡住了,没有想法了,有什么建议吗?替换
onclick=“javascript:setval(0)”
与
onclick=“javascript:setval()”
有关struts2迭代器标记的更多信息。我找到的解决方案如下: 测试文件
<table class="table table-bordered table-striped table-condensed table-hover"
id="exp">
<thead>
<tr>
<th class="center"></th>
<th>Name</th>
</tr>
</thead>
<tbody>
<s:if test="listanume.size>0">
<s:iterator value="listanume" status="statusVar">
<tr>
<td class="center">
<button class="btn" onclick="javascript:setval(0)">
delete
</button>
</td>
<td><s:property value="nume"/></td>
</tr>
</s:iterator>
</s:if>
</tbody>
</table>
<h4>Numarul randului este: <s:property value="mysample"/> </h4>
<script>
var mysample= '';
function= setval(varval){
mysample=varval;
alert(mysample);
}
</script>
<table class="table table-bordered table-striped table-condensed table-hover"
id="exp">
<thead>
<tr>
<th class="center"></th>
<th>Name</th>
</tr>
</thead>
<tbody>
<s:if test="listanume.size>0">
<s:iterator value="listanume" status="statusVar">
<tr>
<td class="center">
<button class="btn" id="<s:property value='indexrow'/>">
delete
</button>
</td>
<td><s:property value="nume"/></td>
</tr>
</s:iterator>
</s:if>
</tbody>
</table>
<i><p id="test"> No button pressed.</p></i>
<script>
$("button").click(function(e){
var idClicked = e.target.id;
$("#test").html(idClicked);
});
</script>
名称
删除
未按下任何按钮
$(“按钮”)。单击(功能(e){
var idClicked=e.target.id;
$(“#test”).html(单击idc);
});
流行java
public class Pop {
private int nrrow;
private List<UserModel> listanume = new ArrayList<UserModel>();
UserModel user = new UserModel(),
user1 = new UserModel(),
user2 = new UserModel();
private String[] sample;
{
sample = new String[]{"list1", "list2", "list3"};
}
public String execute() {
user.setEmail("eret@esre");
user.setPass1("1234");
user.setNume("gigel");
user1.setEmail("yuii@ihj");
user1.setPass1("6789");
user1.setNume("marius");
user2.setEmail("nmnn@cvx");
user2.setPass1("7676");
user2.setNume("sorin");
sample1.add(user);
sample1.add(user1);
sample1.add(user2);
return "succes";
}
public String afisnrow(){
execute();
listanume=sample1;
return "succes";
}
public String[] getSample() {
return sample;
}
public void setSample(String[] sample) {
this.sample = sample;
}
public List<UserModel> getSample1() {
return sample1;
}
public void setSample1(List<UserModel> sample1) {
this.sample1 = sample1;
}
public void setNrrow(int nrrow){
this.nrrow=nrrow;
}
public int getNrrow(){
return nrrow;
}
public List<UserModel> getListanume(){
return listanume;
}
public void setListanume(List<UserModel> listanume){
this.listanume=listanume;
}
}
public class Pop {
private int indexrow;
private List<UserModel> listanume = new ArrayList<UserModel>();
UserModel user = new UserModel(),
user1 = new UserModel(),
user2 = new UserModel();
public String execute() {
user.setEmail("eret@esre");
user.setPass1("1234");
user.setNume("gigel");
user1.setEmail("yuii@ihj");
user1.setPass1("6789");
user1.setNume("marius");
user2.setEmail("nmnn@cvx");
user2.setPass1("7676");
user2.setNume("sorin");
listanume.add(user);
listanume.add(user1);
listanume.add(user2);
return "succes";
}
public String afisnrow(){
execute();
for (UserModel userModel : listanume) {
UserModel userModel1=new UserModel();
indexrow++;
userModel1.setNume(userModel.getNume());
userModel1.setIndexrow(indexrow);
listanume.add(userModel1);
}
return "succes";
}
public List<UserModel> getListanume(){
return listanume;
}
public void setListanume(List<UserModel> listanume){
this.listanume=listanume;
}
}
公共类Pop{
私有int indexrow;
私有列表列表名称=新的ArrayList();
UserModel user=new UserModel(),
user1=新的UserModel(),
user2=新的UserModel();
公共字符串execute(){
user.setEmail(“eret@esre");
user.setPass1(“1234”);
user.setNume(“gigel”);
user1.setEmail(“yuii@ihj");
user1.setPass1(“6789”);
用户1.setNume(“马吕斯”);
user2.setEmail(“nmnn@cvx");
user2.setPass1(“7676”);
user2.setNume(“sorin”);
添加(用户);
添加(user1);
添加(user2);
返回“成功”;
}
公共字符串afisnrow(){
执行();
for(UserModel UserModel:listanume){
UserModel userModel1=新的UserModel();
indexrow++;
userModel1.setNume(userModel.getNume());
userModel1.setIndexrow(indexrow);
添加(userModel1);
}
返回“成功”;
}
公共列表getListanume(){
返回列表;
}
公共无效设置列表名称(列表列表名称){
this.listanume=listanume;
}
}
是否使用jquery创建动态表?现在我使用struts2创建表,正如您看到的,我正在使用您调用setval
函数,每行传递0。你试着把什么放在那里?我只是想从表中选择第一行,你到底有什么问题?你试过什么?这是对的,但我不会用它,因为它不是我需要的,相反,这个答案给了我一个解决这个问题的想法。太好了。请将您所做的作为评论分享,以便其他人受益。