0

先生,当我点击“重命名日期按钮”时,jquery popop 日历出现在我的屏幕上,一旦我点击它的提交按钮,它就会转发到我的页面,但没有刷新确切的 div。我不知道我应该在哪里指定 div刷新我的特定 div 的目标..

用于提交的 jquery 函数

  function okButton(){

            $("#formId").submit();
           };
$(this).submit({
            target: '#userTemplateRightmiddlediv'});
        };

struts.xml

 <!-- Rename Selected Day for User Template -->
    <action name="EditDayAction"class="com.ebhasin.fitnessbliss.dao.DynamicTableOperationsService" method="RenameDayUserTemp">
        <result name="success">/jsps/userTemplateRightmiddlediv.jsp</result>
    </action>
4

2 回答 2

1

扩展您的 'okButton' 的功能以停止默认的表单提交行为,然后创建一个 ajax 函数来连接到您的 XML 文件,返回数据,然后将数据插入到 ID 为的元素的 .html() 中userTemplateRightmiddlediv

function okButton(){
  $("#formId").submit(function(e){ //'e' for 'event'
    e.preventDefault();//stop the page from refreshing
    $.ajax({
      url: 'Struts2 URL Here',
      dataType: 'xml',
      success: function(xml){
        //function(xml) represents an object returned from our XML file, we can work with it however we want by using normalized jquery procedures
        $("#userTemplateRightmiddlediv").html(xml);
      }
    });
  });
}

编辑

更改以反映 Struts 2 的可移植性。

于 2012-03-16T04:57:41.347 回答
0

您正在尝试触发两次提交。$ 是一个返回对象的函数。“提交”是该对象的一种方法。如果 jquery 对象持有一个表单,就像按下该表单上的提交按钮一样,页面会刷新并且所有剩余的代码都无关紧要。您尝试提交两次,但 $(this).submit 并没有真正意义。

如果我不得不猜测,也许你想要更像这样的东西:

$('#formId').submit( function(e){
    e.preventDefault(); // stops the page from reloading
    //maybe ajax or something else to change this div you're talking about.
} )
于 2012-03-16T04:59:46.490 回答