を押した後にループで発生します。これは、2番目のevent==='afterSubmit'
のサブミットボタンをクリックした後のJSカスタムイベントのコードです。このイベント全体を繰り返し閉じるまで繰り返します。私はe.stopImmediatePropagation();
を使用してこのイベントを停止していますが、ヒントはありませんか?私が見JavaScriptカスタムイベントは、サブミットボタン
{
customEventMap: {
eventMap: [{
events: '*',
args: [function (e) {
return e;
}],
method: function (e) {
// alert('hello ..');
if (e.fullEventName === 'accounts.login') {
//alert(' Heyy..');
if (typeof (e.profile.zip) !== 'undefined') {
//alert('hey Yo..');
if (e.profile.zip !== '') {
alert('Yo 1st step ..');
alert(e.profile.zip);
gigya.accounts.showScreenSet({
screenSet: 'New-RegistrationLogin',
startScreen: 'Address-Info'
});
}
}
}
if (e.eventName === 'afterSubmit') {
alert(' Email');
if (typeof (e.profile.zip) !== 'undefined') {
//alert('hey .');
if (e.profile.zip !== '') {
alert('Yo 2nd step..');
alert(e.profile.zip);
gigya.accounts.showScreenSet({
screenSet: 'New-RegistrationLogin',
startScreen: 'Bio'
});
}
}
}
e.stopImmediatePropagation();
}
}]
}
}
はい私はあなたが提案したように空の状態をチェックする条件を変更しました。しかし、(typeof(e.profile.zip)!== 'undefined')でもこの条件を削除しなければなりませんでした。助けてくれてありがとう、今働いている。 –
zipフィールドに値があっても、少なくとも1回実行した後は、このコードをイベントで作成することはできますか?イベントの後のスクリーンセットは、一度だけロードする必要があります –
Alok、あなたは下のリンクを見ることができます。基本的には、サイトのスキーマに新しいブール値フィールドを作成し、このフィールドの値がfalseまたはnullで画面が表示された場合にのみ画面を表示する必要があります。フィールドを** true **に設定しますそれが必要な場合は、他のフィールドにデータが含まれているかどうかもチェックします)。そのページで**コードの例「登録後の時間」**を見て、設定方法を知ることができます。 http://developers.gigya.com/display/GD/Progressive+Profiling#ProgressiveProfiling-BestPractice-GlobalConfiguration – Levi