Tag: jsp

如何在客户端存储临时数据,然后将其发送到服务器

我需要临时在客户端存储数据,以允许用户添加,编辑或删除项目,而无需为每个操作查询服务器; 就在用户完成添加项目并单击“ 添加”按钮时,列表将被发送到服务器以永久保存。 此图像描述了我想要实现的目标。 我知道我必须在JavaScript中使用数组,但我不知道如何创建一个用于存储对象(在本例中, Detail包含:id,price和description)。 我希望你能帮助我。 提前致谢。 PS:我正在使用JSP …对不起我的英语

通过制表符和jQuery和JSP加载替代内容

我有一个政策类型的数据表(选项包括单身,夫妻,家庭和单亲家庭)。 我希望有一个标签式界面,每个策略类型占用一个选项卡。 同时,在相关选项卡下方显示与相关政策类型相关的数据表。 当用户单击另一个选项卡时,将显示另一个数据表。 我想过从数据库导出数据然后将其转换为XML,从而通过XSLT和/或jQuery将其解析为HTML。 我认为这太过分了,因为它只是一张简单的表格。 我想做的是在外部服务器页面上进行所有处理,在这种情况下是JSP,只需交换掉大量的HTML。 因此,用户单击调用外部JSP的选项卡。 然后,外部JSP检索相关选项卡的数据,构建表,然后在屏幕上显示。 或者外部JSP可以查询数据库,使用唯一的id构建所有四个表,然后jQuery只加载已调用的表。 最后,通过JSP构建四个单独的HTML然后单独调用它会更容易吗? 我只想说一个HTML是诚实的。 如果表是根据JSP的请求构建的,然后提供给客户端,我不知道它是否会破坏AHAH的对象。 我还担心如果我们查询数据库并构建表,那么如果数据库数据发生变化,它将如何更新表的内容。 我认为这也可以在页面上完成,即构建4个表并使用CSS显示隐藏与活动选项卡无关的表:无但我不确定可访问性 – 屏幕阅读器是否会获取此数据? 抱歉,如果这没有意义,我觉得我可能试图过度复杂化,但我只是想找到最好的方法。 它很晚了:(

当gridview设置为true时,Jqgrid在IE9中显示“正在加载”

我的网格在firefox和chrome中运行良好,但当gridview设置为true时,它在IE9中显示“正在加载”图标。 这是使用jqgrid 4.7.0 var setGrid = $(“#recordSetsGrid”); var gridView=false; //setting this to true in IE9 causes grid not to show with only message ‘Loading’. setGrid.jqGrid( { ajaxGridOptions: {cache: false}, url : getUrlContext()+loadUrl, postData : { searchText : function() { return $(“#” + setSearchTextId) .val(); } }, datatype : “json”, editurl : setGrid_editUrl, colNames : [“”,”Record […]

如何阻止标签的window.on(’beforeUnload’)事件?

在我的项目中,当用户想要使用X按钮关闭窗口/选项卡时,我需要获得用户确认警报。 但window.on(’beforeUnload’)也适用于超链接 。 如何阻止 tag此leave page提醒? 我的JSP将拥有 click here 我的Jquery会有, $(document).ready(function(){ $(‘#navigate’).on(‘click’, function() { stopNavigate(event); }); }); function stopNavigate(event){ $(window).off(‘beforeunload’, function(){ }); } $(window).on(‘beforeunload’, function(){ return ‘Are you sure you want to leave?’; }); $(window).on(‘unload’, function(){ logout(); }); 当用户单击任何links时,我不希望leave message alert 。 我只需要关闭窗口关闭操作的leave message alert 。

处理服务器端HTTP 4nn / 5nn错误在jQuery的ajax请求中返回整个HTML文档

要点:如何在jQuery的ajax请求中处理服务器端HTTP 4nn / 5nn错误? 这种情况涉及服务器端的JSP / Servlet Web应用程序。 在这里,我不是在讨论琐碎的运行时exception,例如NullPointerException等。 假设他们都处理完美。 这种HTTP 4nn / 5nn错误的一个很好的例子是401未授权(用户权限不足)和500内部服务器错误(数据库关闭,I / O错误, Error等)。 假设他们不能(或不应该)在编码级别被捕获。 现在我刚刚在web.xml为这些声明了一个 。 它基本上将请求转发到预定义的JSP / HTML错误页面,其中最终用户被告知发生了严重错误,并且用户可以联系xx@xx.xx以获得进一步的帮助。 同一页面还显示有关错误/exception的全局详细信息。 它在常规HTTP请求中完美运行,但是如何使用jQuery在XMLHtttp请求中处理它? 什么是最好的用户体验? 对我来说,它只是显示整个错误页面,就好像它是一个普通的HTTP请求。 我解决了它如下: function init() { $.ajaxSetup({ error: handleXhrError }); } function handleXhrError(xhr) { document.open(); document.write(xhr.responseText); document.close(); } 虽然它完美无缺,但我觉得它像黑客一样。 用HTTP错误页面的内容替换整个文档。 但这也是你会遵循的方式吗? 如果没有,你可以详细说明为什么不以及你更喜欢什么方式? 我看到的唯一选择是使用JS显示一些警告/消息框以通知用户有关不可解析的错误,但是用户可以将其解除并继续使用该页面,而这是不可能的。

如何使用jQuery和jsp生成动态下拉列表?

我有一个类型A的列表,其中每个元素包含另一个类型B的列表。我想创建一个表单,当用户从包含值A的下拉列表中选择一个值时,另一个下拉列表将填充基于值的值在选定项目的类型B列表上。我是jQuery的新手,但我知道使用jQuery而不是纯jsp来做这个很方便。 请简要介绍一下我需要遵循的步骤来完成这项工作。

在jsp中创建一个json对象并将其与JQuery一起使用

我创建了一个JSP应用程序,它根据用户搜索(使用lucene)获得结果。 我将结果存储在Bean中。 我也使用Jquery Ajax来显示结果。 $.ajax({ url : “search.jsp”, data : “search=test”, success : function(html) { (“#search_results”).hide().html(html).fadeIn(1500); } }); search.jsp的 for (int i = 0; i < size; i++) { out.println(searchResult.get(i).getHTML()); } 这工作正常,但是我想改变它,所以它将JSON对象返回给JQuery,然后让JQuery解析对象并显示结果 我不知道如何做到这一点,因为我是JSON对象和JSP的新手。 我可以做点什么 JSONObject json = new JSONObject(); json.put(“title”, “TITLE_TEST”); json.put(“link”, “LINK_TEST”); 但我不知道如何将json到jquery,然后让jquery解析对象 任何帮助表示赞赏:)

在页面加载/重新加载时设置Jquery ui活动选项卡

我使用的Jquery UI选项卡的基本实现工作正常,但我想根据用户操作动态设置(或重置)活动选项卡。 如何根据查询字符串值设置活动选项卡? 使用我之前的选项卡解决方案,我能够传递查询字符串值并在页面加载时设置活动选项卡。 (由于其他技术挑战,我不得不放弃这个旧解决方案。) 当用户在浏览器应用程序中选择“保存”按钮并重新加载浏览器页面时,如何在按下保存之前将焦点保持在他们所在的选项卡上? 当用户返回浏览器应用程序的“任务”页面时,如何设置活动选项卡? 例如,在我的Web应用程序中,如果用户浏览到“项目”页面然后返回“任务”页面,我该如何重置之前的选项卡? 使用Javascript: $(function() { $(“#tabs”).tabs(); }); HTML示例代码: Description Action Resources Settings Description content Action content Resources content Settings

如何使用JSP / Servlet和Ajax将文件上传到服务器?

我正在创建一个JSP / Servlet Web应用程序,我想通过Ajax将文件上传到Servlet。 我该怎么做呢? 我正在使用jQuery。 我做到目前为止: 有了这个jQuery: $(document).on(“#upload-button”, “click”, function() { $.ajax({ type: “POST”, url: “/Upload”, async: true, data: $(“.upload-box”).serialize(), contentType: “multipart/form-data”, processData: false, success: function(msg) { alert(“File has been uploaded successfully”); }, error:function(msg) { $(“#upload-error”).html(“Couldn’t upload file”); } }); }); 但是,它似乎不发送文件内容。

防止JavaScript文件的浏览器缓存的更好方法

这就是我们如何防止浏览器缓存JS和CSS文件。 这似乎有点hacky ..有更好的方法吗? <link rel="stylesheet" type="text/css" media="screen" href="/css/management.css?” /> <script type="text/javascript" src="/js/pm.init.js?”> <script type="text/javascript" src="/js/pm.util.func.js?”> 更新:我们想要阻止缓存的原因是确保在我们执行新版本时加载更新版本的文件。