jquery对话框开头的不同按钮名称

时间:2010-05-24 13:47:37

标签: jquery forms button dialog

我有一个对话框表单,当我打开它时,我有“添加任务”按钮,我想保留这个“名称”,当我打开一个空盒子的表格,但我想要一个按钮当我打开一个已经存在的任务时命名为“编辑此任务”。

当我按下回车键时,我也想用这个按钮发送表格,无论我在表格上的哪个位置。

谢谢。

3 个答案:

答案 0 :(得分:1)

$('.ajouter-tache')
        .click(function() {
        if($(this).attr('id_tache')!=""){ 
            $('.ui-dialog-buttonpane button:eq(0) .ui-button-text').each(function(e, f){
                $(f).html('Modifier la tache');
            })
        }
        else {
            $('.ui-dialog-buttonpane button:eq(0) .ui-button-text').each(function(e, f){
                $(f).html('Ajouter une tache');
            })
        };
    })

这是我做的,它的工作原理但是因为我是初学者而且没有浪费时间去研究jQuery它很糟糕,特别是选择器冗余和每个都没用(但我不知道)如何只采取那个元素。)

答案 1 :(得分:0)

您需要添加一些关于“编辑此任务”的工作方式的更多信息,因为从服务器端到客户端有一些不同的实现(在解析时填充?表单是否为ajax?等)

如果您在提交事件上运行实际的“提交”工作,则可以在用户在表单中按Enter时使用。 (当然,除了文本区域)

<form id="myForm" onSubmit="return yourCoolSubmitFunction();" >

$( function() {
    $('#myForm').submit(function() {
       // code here that can validate or simply
       return true; // submit the form
       // return false won't submit, which is good for validating input
    });
});

对于按钮文本,如果通过服务器端代码将表单填充为“编辑表单”,则可以在第一次生成html时更改按钮标签。

如果是ajax,您可以在加载表单数据时更新按钮。

如果我仍然没有在头上敲钉子,可能会添加一个表格元素来检查?如果在编辑模式下你可以检查<input type="hidden" name="isEdit" value="1" />   if( $('#myForm input[name=isEdit]').val() == 1 ) ...

答案 2 :(得分:0)

好的,抱歉,我认为我的代码不是必要的,但看起来像是^^

$("#dialog-form").dialog({
            autoOpen: false,
            height: 560,
            width: 400,
            modal: false,
            buttons: {
                'Add task': function() {
                    $(".ajax").trigger('submit');
                },
                'Back': function() {
                    $("#dialog-form").dialog('close');
                }
            },
            open: function() {
                $(this).parents('.ui-dialog-buttonpane button:eq(0)').focus(); 
            },
            close: function() {
                allFields.val('').removeClass('ui-state-error');
            }
        });

$(".ajax").submit(
        function(e) {
        var datas = $(this).serialize();          
        $.ajax({
            type: 'POST',      // envoi des données en POST
            url: 'Planning.php?action=ajoutTache',    
            data: datas,     // sélection des champs à envoyer
            success: function() {
                $("#dialog-form").dialog('close');
                location.reload();
            }
        });
        return false; // Pour empêcher le submit vers la page 'action'
    });

当任务已存在时,我希望按钮“添加任务”成为“编辑任务”。