按下提交按钮后,循环中会出现JavaScript自定义事件

时间:2017-04-24 09:37:00

标签: gigya

对于JS自定义事件,在第二个渐进式分析屏幕event==='afterSubmit'上单击提交按钮后,整个事件会一次又一次地重复,直到我关闭它。我正在使用e.stopImmediatePropagation();来阻止此活动,但它没有提供任何提示?

1 个答案:

答案 0 :(得分:0)

我看到的一件事是,由于您正在使用afterSubmit事件,并在其中调用accounts.showScreenSet,因此每次在新屏幕上按提交时,它将依次再次调用该事件。这可能不是通缉行为。

其次,只有在您检查的字段为空且未满时才最好触发屏幕。它现在的方式意味着如果用户已填写该字段,屏幕将始终触发。

你可以试试这个:

if (e.eventName === 'afterSubmit') {

                alert('afterSubmit Fired');

                if (typeof (e.profile.zip) !== 'undefined') {
                    if ((e.profile.zip == '') || (e.profile.zip == null)) {
                        alert('Yo 2nd step..');
                        alert('Zip is empty, please fill out your zipcode on the next screen');

                        gigya.accounts.showScreenSet({
                            screenSet: 'New-RegistrationLogin',
                            startScreen: 'Bio'
                        });
                    }
                }
            }

此外,在向现有用户的配置文件添加其他信息时,建议最佳做法是使用ProfileUpdate屏幕集中的屏幕,而不是RegistrationLogin屏幕集。