[英]Create a modal dialog box inside a JSP from and perform POST action
我正在尝试对页面中的文件进行重命名。 我必须在提交对话框弹出窗口时执行GET请求才能重命名文件。 我面临的问题是,页面上有很多输入字段,因此每次重命名文件时都无法提交表单。 文件列表的HTML组件是动态生成的。 这是代码片段-
<div class="modal fade" id="renameModal" role="dialog">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Rename File</h4>
</div>
<div class="modal-body">
<div id="renameForm" class="form-group">
<label class="col-sm-2 control-label" for="inputFname3">FileName: </label><input id="newFilename" type = "text" name = "newFilename"/>
<br />
<input id="confirm-btn" class="btn btn-primary" type = "submit" value = "Confirm" name = "ok" style="float: right" />
<br />
</div>
</div>
</div>
</div>
</div><!-- /modal -->
<%
String str =AdministrationServlet.fileJson(request, collection).toString();
String x = request.getParameter("ok");
if(x!=null && x.equals("Confirm"))
{
AdministrationServlet.renameFile(request,collection.getUuid(),"manifest_text", collection);}
%>
<script type="text/javascript">
$(document).ready(function () {
$('button').click(function(){
var id = this.id;
var res = id.substring("rename-btn-".length,id.length);
$('#renameModal').find('#renameForm').append('<input id="myfieldname" type="hidden" name="myfieldname" value="'+res+'" />');
var oldfilename = $('#myfieldname').val(); <%--"<%=request.getParameter("myfieldname")%>"; --%>
var newfilename = $('#newFilename').val(); <%--"<%=request.getParameter("newFilename")%>";--%>
$('a[id="'+oldfilename+'"]').text(newfilename);
});
});
</script>
如何通过执行API调用而不提交表单来重命名文件。 由于整个div都在表单内。
您应该对Servlet进行Ajax调用以重命名文件。 还有一件事,您应该将javascript代码远离jsp放入单独的js文件中,并使用<script>
标记将其包含在jsp页面中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.