YII2可有方法实现下拉框联动?
本来想去yiichina问的,但是上面很水,基本只有站长偶尔回复一下!
就是类似于城市三级联动那种,选中一级之后,在后一个下拉框列出下一级的分类,只是我是用于我的分类。其实用html+js+php我是可以弄出来的,只是这样会抛弃yii
自带的表单生成方法,也会失去他的验证!
暂时先用自己会的方法弄了,如果有大神知道,再改成YII
风格的~
回复内容:
本来想去yiichina问的,但是上面很水,基本只有站长偶尔回复一下!
就是类似于城市三级联动那种,选中一级之后,在后一个下拉框列出下一级的分类,只是我是用于我的分类。其实用html+js+php我是可以弄出来的,只是这样会抛弃yii
自带的表单生成方法,也会失去他的验证!
暂时先用自己会的方法弄了,如果有大神知道,再改成YII
风格的~
Yii2本身没有联动效果插件,都是用其他类拼接起来的,不过你自己可以写插件。yii2的例子没有,之前写过yii1的联动效果。你不想失去本身的验证,只要input的name跟模型中的一样就行了。
<code>//view <div class="form-group row"> <div class="col-md-1"> <?php echo $form->dropDownList($blog,'mid',CHtml::listData(Metas::model()->parents(),'mid','name'), array ( 'class'=>'form-control', 'empty'=>array('0'=>'请选择类别'), 'onchange'=>'ajaxGetArea(this)')); ?> <?php echo $form->error($blog,'mid'); ?> </div> </div> //js Yii::app()->clientScript->registerScript('metas', ' function ajaxGetArea(obj) { //请求地址 var link = "'.Yii::app()->createUrl("/cms/metas/json").'"; //请求数据 $.post( link, { parent : $(obj).val() }, function(data) { //清除子类的select $(obj).parent().nextAll("div").each(function() { $(this).remove(); }); if (data != "-1") { //构造子类select的html var select = null; // 此处注意添加onchange事件 select = "<div class='\"col-md-1\"'><select class='\"form-control\"' name='\"Articles[mid]\"' onchange='\"ajaxGetArea(this)\"'><option value='\"-1\"'>请选择类别</option>"; $.each(data, function(key, item) { select += "<option value="+item.mid+">"+item.name+"</option>"; }); select += "</select></div>"; //插入到右侧,上一级 $(obj).parent().after(select); //触发下一个子类select的动态加载 //$(obj).next("select").trigger("change", function() { //ajaxGetArea($(this)); //}); //更新name的位置 $(obj).removeAttr("id"); $(obj).next("select").attr("id", "Articles_mid"); $(obj).removeAttr("name"); $(obj).next("select").attr("name", "Articles[mid]"); } }, "json" ); } ',CClientScript::POS_END); </code>
http://www.cnsecer.com/7140.html 不要谢我

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











ブートストラップを使用して検索バーの値を取得する方法:検索バーのIDまたは名前を決定します。 JavaScriptを使用してDOM要素を取得します。要素の値を取得します。必要なアクションを実行します。

vue.jsでBootstrapを使用すると、5つのステップに分かれています。ブートストラップをインストールします。 main.jsにブートストラップをインポートしますブートストラップコンポーネントをテンプレートで直接使用します。オプション:カスタムスタイル。オプション:プラグインを使用します。

ブートストラップを使用して垂直センタリングを実装します。FlexBoxメソッド:D-Flex、Justify-Content-Center、Align-Items-Centerクラスを使用して、FlexBoxコンテナに要素を配置します。 ALIGN-ITEMS-CENTERクラス方法:FlexBoxをサポートしていないブラウザの場合、親要素の高さが定義されている場合、Align-Items-Centerクラスを使用します。

ブートストラップスプリットラインを作成するには2つの方法があります。タグを使用して、水平方向のスプリットラインを作成します。 CSS Borderプロパティを使用して、カスタムスタイルのスプリットラインを作成します。

ブートストラップに画像を挿入する方法はいくつかあります。HTMLIMGタグを使用して、画像を直接挿入します。ブートストラップ画像コンポーネントを使用すると、レスポンシブ画像とより多くのスタイルを提供できます。画像サイズを設定し、IMG-Fluidクラスを使用して画像を適応可能にします。 IMGボーダークラスを使用して、境界線を設定します。丸い角を設定し、IMGラウンドクラスを使用します。影を設定し、影のクラスを使用します。 CSSスタイルを使用して、画像をサイズ変更して配置します。背景画像を使用して、背景イメージCSSプロパティを使用します。

ブートストラップボタンの使用方法は?ブートストラップCSSを導入してボタン要素を作成し、ブートストラップボタンクラスを追加してボタンテキストを追加します

Bootstrapフレームワークをセットアップするには、次の手順に従う必要があります。1。CDNを介してブートストラップファイルを参照してください。 2。独自のサーバーでファイルをダウンロードしてホストします。 3。HTMLにブートストラップファイルを含めます。 4.必要に応じてSASS/LESSをコンパイルします。 5。カスタムファイルをインポートします(オプション)。セットアップが完了したら、Bootstrapのグリッドシステム、コンポーネント、スタイルを使用して、レスポンシブWebサイトとアプリケーションを作成できます。
