0

我知道如何获取索引,但这似乎不是我需要发布到标签本身的内容。

这是我上一篇文章的延续,但不同的问题: 将 jQuery 表单结果提交回动态选项卡

我的选项卡表单现在以 100% 的成功提交,在我的 jQuery 验证内部,但我希望我的回复出现在它来自的选项卡中。

在我的 jQuery 验证结束时,我有:

 submitHandler: function(form) {

 var thisTab = $tabs.tabs('option', 'selected'); // what index are we?

 var options = {
     target: '#thisTab',

 };
 $(form).ajaxSubmit(options);
 return false;
 }

它很接近,但我正在做的实际上是抓取所选选项卡的索引,这似乎不是我需要 ajaxSubmit 发布到的内容。

4

2 回答 2

0

据我了解,您想将目标设置为 thisTab,但您将目标设置为 jQuery 选择字符串#thisTab

这意味着目标是 id 为“thisTab”的元素。

来自 Jquery 表单插件 API

目标

标识页面中要使用服务器响应更新的元素。该值可以指定为 jQuery 选择字符串、jQuery 对象或 DOM 元素。默认值:空

所以你应该设置thisTab为目标。

更新 :

主要问题是您试图将选项卡设置为目标元素,您应该将 selectedPanel 设置为目标。

 submitHandler: function(form) {

 var thisPanel = $tabs.tabs('option', 'selectedPanel'); // what index are we?

 var options = {
     target: thisPanel,

 };
 $(form).ajaxSubmit(options);
 return false;
 }
于 2012-11-12T23:48:26.917 回答
0

嗯,也许我不清楚,我没有解释它。

我想要的是 update.cfm 的输出显示在包含我刚刚更新的详细信息的同一动态选项卡正文中。我尝试了你的建议,当我点击提交时它所做的只是眨眼。它确实提交了,我可以使用 firebug 查看帖子和回复,但没有显示回复。所以我确实希望标签作为目标。

然而,您所做的是向我展示了一个我不知道的新术语“selectedPanel”,这使我看到了我以前从未见过的这篇文章: 如何在 Jquery UI 选项卡中获取选定的选项卡面板元素?

这导致我进行了以下更改:

 submitHandler: function(form) {

 var selectedPanel = $("#tabs div.ui-tabs-panel:not(.ui-tabs-hide)");

 var options = {
 target: selectedPanel

 };
 $(form).ajaxSubmit(options);
 return false;
 }
于 2012-11-13T13:11:39.470 回答