如何在Laravel的下拉菜单中使用级联填充数据?

时间:2018-09-26 09:05:08

标签: php laravel laravel-5

这是我的user_type表

function englishchange($string) {
$latin = array('dogs','dog','stores','store','shops','shop','shopify');
$latinchanged = array(' dogs ',' dog ',' stores ',' store ',' shops ',' shop ',' shopify ');
return str_replace($latin, $latinchanged, $string);
}
$englishchanged = (englishchange('shopifystore'));

Data in user_type table

这是dp和rta表

 Schema::create('user_type', function (Blueprint $table) {
        $table->increments('id');
        $table->string('title');
        $table->timestamps();
    });

这是add_user.blade.php

Schema::create('dp', function (Blueprint $table) {
        $table->increments('id');
        $table->string('dp_id');
        $table->integer('name');
        $table->timestamps();
    });


 Schema::create('rta', function (Blueprint $table) {
        $table->increments('id');
        $table->string('rta_id');
        $table->integer('name');
        $table->timestamps();
    });

在UserController中添加用户功能

<div class="control-group">
          <label class="control-label">Type</label>
          <div class="controls">
            <select name="user_type" id="user_type">
                <option selected disabled>Select User Type</option>
                @foreach($user_type as $key => $value)
                 <option value="{{ $key }}">{{strtoupper($value)}}</option>
                @endforeach
            </select>
          </div>
        </div>
         <div class="control-group">
          <label class="control-label">User Name</label>
         <div class="controls">
            <select name="user_id" id="user_id">
               <option selected disabled>Select User Name</option>
            </select>
          </div>
        </div>

这里,在这种情况下,当我在类型下拉列表中选择dp时,我想在user_id下拉列表中显示dp表中的名称,而当选择了rta时,我想在user_id下拉列表中显示rta表中的名称。 / p>

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

可以通过处理change上的HTMLSelectElement事件来使用Javascript完成。当您在下拉列表中选择任何元素时,将触发change事件,并且在句柄中,您可以选择#user_id元素添加一些新的option子元素,该值可以手动或通过发出ajax请求以检索相应的用户