ホームページ >バックエンド開発 >PHPチュートリアル >ポップアップウィンドウでの戻り値の処理方法
PHP Yii
Yii フレームワークを使用して、ポップアップ ボックスの選択グループを作成し、それをメイン ページに戻しました<?php $this->beginWidget('zii.widgets.jui.CJuiDialog', array( 'id'=>'mydialog', // additional javascript options for the dialog plugin 'options'=>array( 'title'=>'选择接收者组', 'autoOpen'=>false, 'modal'=>true, 'buttons'=>array( '确定'=>'js:function(){var rv; $("input[name="group-grid_c0[]"]:checkbox:checked").each(function{(rv+=$(this).val();)}); window.dialogArguments.getElementbyid("group").value=rv; $(this).dialog("close"); } ', '关闭'=>'js:function(){$(this).dialog("close");}', ), ), )); echo $this->renderPartial('/group/_choose',null,TRUE); $this->endWidget('zii.widgets.jui.CJuiDialog'); // the link that may open the dialog echo CHtml::link('选择接收者组', '#', array( 'onclick'=>'$("#mydialog").dialog("open"); return false;', )); ?>
$("input[name="group-grid_c0[]"]:checkbox:checked").each(function{(rv+=$(this).val();) });
window.dialogArguments.getElementbyid("group").value=rv;
$(this).dialog("close");
$("input[name=" +group-grid_c0] [] +"]:checkbox:checked").each(function{(rv+=$(this).val();)});
window.dialogArguments.getElementbyid("group").value=rv; (this).dialog("close");
文字列と変数を接続するには + を使用します
エラー メッセージを確認するには、firebug などのツールも活用してください
$("input[name= 'group-grid_c0[] ']:checkbox:checked").each(function{(rv+=$(this).val();) } に変更する必要があります。 );
window.dialogArguments.getElementbyid("group").value=rv;
$(this).dialog("close");
ありがとう、文字列 group-grid_c0[]修正してください
$("input[name='group-grid_c0[]']:checkbox:checked").each(function{(rv+=$(this).val();)}); に変更してください2 つの引用符と中括弧はエスケープする必要があります。しかし、問題はまだ残っています。ポップアップ ウィンドウはメイン ページに直接埋め込まれます。誰か説明してもらえますか? homeホームページに埋め込まれるとはどういう意味ですか? (function {rv+= $();通常、以下に示すように、[受信者グループの選択] をクリックした後にウィンドウがポップアップ表示されます:
ああ、写真が反転しています
解決しましたか?
一般的に、ポップアップさせたい部分は、最初に非表示にし、クリックすると表示する必要があります
スタイルが正しいかどうかを確認してくださいjquery_ui を使用 まず、非表示かどうかを確認します。 次に、選択した受信者グループにイベントがバインドされているかどうかを確認します。