3

我有一个页面,其中包含动态生成的可变数量的表。每个表都列出了一组用户可以添加/编辑/删除的“产品”。每张桌子下面都有一个按钮。我希望每个按钮将其上方表格中的产品保存到一个“包”中,这只是一组产品。单击该按钮时,我希望它启动一个 jQuery 对话框表单,用户可以在其中输入他们正在创建的包的名称和描述。

有没有办法让我在对话框的“按钮”功能范围内首先引用启动 jQuery 对话框的按钮?这样,当用户单击对话框中的“保存”按钮时,我既可以提交对话框本身包含的表单(名称和描述),也可以提交页面中最近的表格中包含的产品数据用户单击以启动表单的特定按钮的标记?

编辑:我忘了提到整个页面(所有表格)已经包含在一个表单元素中。这是因为用户还可以将三个表中的所有产品保存为“机会”,即一组产品组。这是一个显示布局的小伪 html:

<form>
    <table>
    </table>
    <table>
    </table>
    <table>
    </table>
</form>

为了允许用户将所有表中的所有产品保存到“机会”,我需要将所有三个表都包裹在一个表单标签中。但是,当用户单击特定表下的“保存包”按钮时,我只想提交该表中的数据以及用户在对话框中输入的名称和描述。

4

2 回答 2

0

在 js 中定义一个全局变量,如果单击其中一个按钮,则设置其值。
在本例中,使用了“id”。

$('.button').click(function(){
   id = $(this).index();
   $('#dialog').fadeIn('1000');
    return false;
});

也许这会有所帮助:http:
//jsfiddle.net/Vm7PL/1/

您也可以使用 jquery-ui 对话框。

于 2013-01-02T21:54:59.410 回答
0

不确定您使用的是什么类型的按钮,但这里是标准的 html 输入提交按钮

$(document).ready(function () {
    $("input[type='submit']").click(function () {
        var btn = $(this);

        //get the TR the button is in
        var tr = btn.parent().parent(); // first parent will be the TD, second will be TR, third would be the TABLE

        // find other elements in the TR
        tr.find('#someElement').each(function(){
            //do something with the elements
         });
    });
});
于 2013-01-02T21:26:46.310 回答