IT干货网

javascript之在 JSP 中创建模式对话框并执行 POST 操作

third_qq_acbf90bbd2dede1d 2024年08月15日 编程设计 10 0

我正在尝试重命名页面中的文件。我必须在提交对话框弹出窗口时执行 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">&times;</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 页面中。标签。


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!