나는 'DataView'에 문제가 있습니다 .'Wicket '...이 DataView에 일부 파일을 추가하고 지금까지 파일을 삭제할 때 문제가 있다는 것입니다. 그렇지 않은 파일을 삭제하면 첫 번째 규칙 ...하지만 첫 번째 항목을 삭제하려고하면 다른 모든 낮은 항목이 순차적으로 제외됩니다.
아래 내 코드를 따릅니다.
//Principal panel
private class PanelPrincipalAnexo extends WebMarkupContainer
{
public PanelPrincipalAnexo(String id)
{
super(id);
formUpload = getFormUpload();
add(formUpload);
formUpload.add(getDataViewAnexos("anexos"));
}
}
//creating the FormUpload
private FileUploadForm getFormUpload() {
return new FileUploadForm("formUpload", new PropertyModel<List<FileUpload>>(this, "uploads"));
}
private DataView<ProgramaAnexo> getDataViewAnexos(String id) {
return new DataView<ProgramaAnexo>(id, new AnexoProvider()) {
private static final long serialVersionUID = 1L;
@Override
protected void populateItem(Item<ProgramaAnexo> item) {
item.add(new Label("tipoArquivo"));
item.add(new Label("nomeAnexo"));
item.add(new Label("tamanhoArquivoEmMB"));
item.add(getButtonRemove(item));
}
};
}
public AjaxSubmitLink getButtonRemove(Item<ProgramaAnexo> item) {
AjaxSubmitLink button = new AjaxSubmitLink("btnRemoverBem", form) {
private static final long serialVersionUID = 1L;
@Override
public void onSubmit(AjaxRequestTarget target, Form form) {
actionRemoverKit(target,item);
}
};
return button;
}
private void actionRemoverKit(AjaxRequestTarget target,Item<ProgramaAnexo> item) {
ProgramaAnexo bemRemove=item.getModelObject();
int cont=0;
for(ProgramaAnexo bem:list)
{
if(bemRemove.getBem().getId().intValue()==bem.getBem().getId().intValue())
{
listaBensSelecionadosDireito.remove(cont);
break;
}
}
target.add(panelPrincipalAnexo);
}
THE HTML
<table width="98%" class="table table-hover"
style="table-layout: fixed;">
<thead>
<tr>
<th width="16%"></th>
<th width="16%">Tipo</th>
<th width="29%">Arquivo</th>
<th width="10%">Tamanho</th>
<th width="25%" class="text-left">Ações</th>
<th width="4%"></th>
</tr>
</thead>
<tbody>
<tr wicket:id="anexos">
<td width="16%"></td>
<td width="16%"><span wicket:id="tipoArquivo"></span></td>
<td width="29%"><span wicket:id="nomeAnexo"></span></td>
<td width="10%"><span wicket:id="tamanhoArquivoEmMB"></span></td>
<td width="25%" class="text-left">
<button wicket:id="btnExcluirAnexo"
title="Excluir"
class="btn btn-danger btn-sm"
id="btnRemoverBem"">
<i class="fa fa-minus"></i>
</button>
</td>
<td width="4%"></td>
</tr>
</tbody>
</table>
괜찮 으세요? 그래서 여기서 답을 찾았습니다. 사실 코드가 맞습니다. 문제는 HTML에있었습니다. 제가 사용한 코드는 다음과 같습니다..
<button wicket:id="btnExcluirAnexo"
title="Excluir"
class="btn btn-danger btn-sm"
id="btnRemoverBem"">
<i class="fa fa-minus"></i>
</button>
나는 방금 '버튼'에서 ID를 제거하고 일반적으로 반복했습니다 ...이 문제가 발생한 이유를 모르겠지만 헤이, 작동했습니다 :).
<button wicket:id="btnExcluirAnexo"
title="Excluir"
class="btn btn-danger btn-sm"
I REMOVED THE ID HERE>
<i class="fa fa-minus"></i>
</button>
답장을 게시 해 주신 모든 분들께 감사드립니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다