0

我的页面上有一个 Mailchimp 电子邮件注册表单。当注册成功或失败时,它会从 javascript 库中获取成功/失败消息。

我想阻止它获取默认消息(我无法编辑,因为我相信它们存在于 Mailchimp 的服务器上)并用我自己的替换它们。你能帮我吗?

以下是相关功能:

function mce_success_cb(resp){
$('#mce-success-response').hide();
$('#mce-error-response').hide();
if (resp.result=="success"){
    $('#mce-'+resp.result+'-response').show();
    $('#mce-'+resp.result+'-response').html(resp.msg);
    $('#mc-embedded-subscribe-form').each(function(){
        this.reset();
    });
} else {
    var index = -1;
    var msg;
    try {
        var parts = resp.msg.split(' - ',2);
        if (parts[1]==undefined){
            msg = resp.msg;
        } else {
            i = parseInt(parts[0]);
            if (i.toString() == parts[0]){
                index = parts[0];
                msg = parts[1];
            } else {
                index = -1;
                msg = resp.msg;
            }
        }
    } catch(e){
        index = -1;
        msg = resp.msg;
    }
    try{
        if (index== -1){
            $('#mce-'+resp.result+'-response').show();
            $('#mce-'+resp.result+'-response').html(msg);            
        } else {
            err_id = 'mce_tmp_error_msg';
            html = '<div id="'+err_id+'" style="'+err_style+'"> '+msg+'</div>';

            var input_id = '#mc_embed_signup';
            var f = $(input_id);
            if (ftypes[index]=='address'){
                input_id = '#mce-'+fnames[index]+'-addr1';
                f = $(input_id).parent().parent().get(0);
            } else if (ftypes[index]=='date'){
                input_id = '#mce-'+fnames[index]+'-month';
                f = $(input_id).parent().parent().get(0);
            } else {
                input_id = '#mce-'+fnames[index];
                f = $().parent(input_id).get(0);
            }
            if (f){
                $(f).append(html);
                $(input_id).focus();
            } else {
                $('#mce-'+resp.result+'-response').show();
                $('#mce-'+resp.result+'-response').html(msg);
            }
        }
    } catch(e){
        $('#mce-'+resp.result+'-response').show();
        $('#mce-'+resp.result+'-response').html(msg);
    }
}

}

4

1 回答 1

1

我认为在任何地方你都会看到这样的东西:

$('#mce-'+resp.result+'-response').html(msg);

您想根据您在逻辑中的位置,用您的相关文本替换味精部分。所以你发布的代码中的第一个(第6行)是成功=真,所以替换

$('#mce-'+resp.result+'-response').html(resp.msg);

有类似的东西

$('#mce-'+resp.result+'-response').html('Successfully signed up');

于 2012-05-10T00:05:15.787 回答