Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从具有struts2的表中删除动态添加的行_Java_Jsp_Struts2 - Fatal编程技术网

Java 从具有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>

我对这一点很陌生,我想知道如何从用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>

名称
删除
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。你试着把什么放在那里?我只是想从表中选择第一行,你到底有什么问题?你试过什么?这是对的,但我不会用它,因为它不是我需要的,相反,这个答案给了我一个解决这个问题的想法。太好了。请将您所做的作为评论分享,以便其他人受益。