2

我已经多次使用这个插件,方式与这里看到的非常相似,但我最新的实现不起作用。

这是JavaScript:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="js/jquery.blockUI.js" type="text/javascript"></script>
<script type="text/javascript">
   function disableButtons(){
        alert('TEST'); //this is here just to see if the function is called
        $('div.blockbutton').block({
            message: '<h4>Saving...</h4>',
            css: { border: '2px solid orange' }
         });
     }
</script>

和 HTML:

<div align="center" class="blockbutton">
    <input name="save" type="button" class="btn6022" value="Save" 
       onClick=disableButtons();
         <c:if test='${(sessionScope.package != "NWR")}'>                        
       saveConfirm1(onset_date,report_date,lost_consciousness_date,fatal_death_date);">
         </c:if>
         <c:if test='${(sessionScope.package == "NWR")}'>                        
       "saveConfirm2(onset_date,report_date,fatal_death_date);">
          </c:if>
     </div>

这是我的 Firebug 控制台在触发该功能时给我的信息:TypeError: $(...).block is not a function [Break On This Error]

CSS:{边框:'2px纯橙色'}

我很困惑,因为这段代码与我在其他页面上所做的相同,没有失败。有人可以在这里发现我失踪的问题吗?

4

2 回答 2

0

<c:if>我看到你的块中有一些不一致的地方。底部的 saveConfirm2 用双引号括起来。在 saveConfirm 之后,顶部只有一个双引号。即使没有这个问题,也不完全清楚您要做什么,因此只需查看呈现的 HTML 以确保它有意义。另外,我不熟悉,但从快速搜索来看,它看起来是 JSP。在这种情况下,这些<c:if>块仅用于条件渲染。这些块内的内容应该/>以关闭<input节点结束。为了正确关闭节点并使您的两个函数都被调用 onClick,您需要进行以下修改。我使 onClick 以双引号开头。然后 c:if 块中的内容关闭了最初的开始报价并关闭了

   onClick="disableButtons();
     <c:if test='${(sessionScope.package != "NWR")}'>                        
   saveConfirm1(onset_date,report_date,lost_consciousness_date,fatal_death_date);" />
     </c:if>
     <c:if test='${(sessionScope.package == "NWR")}'>                        
   saveConfirm2(onset_date,report_date,fatal_death_date);" />
      </c:if>

我认为您看到了由于 HTML 格式错误导致的 javascript 错误。

于 2013-06-04T13:59:40.687 回答
0

$.browser 在 1.9.1 http://forum.jquery.com/topic/jquery-blockui-plugin-broken-with-jq-1-9-1中被删除

于 2013-09-05T17:19:09.353 回答