Javascript 如何在codeigniter中为同一个表创建动态/链接下拉列表

Javascript 如何在codeigniter中为同一个表创建动态/链接下拉列表,javascript,php,html,mysql,codeigniter,Javascript,Php,Html,Mysql,Codeigniter,我试图从不同列的1个表中创建动态下拉列表,但我找不到任何适合我需要的教程 它有orang_tua表,其中有n_ibu和n_ayah,但我不知道如何创建动态下拉列表 这是orang_tua桌子 这是我的视图,但只能在下拉列表中显示1列值,该值仅为n_ibu -达夫塔广场酒店- 这是模型 在视图页面中实现下面的HTML和PHP脚本,以创建动态下拉列表 我希望使用上面的代码可以解决您的问题。在视图页面中实现下面的HTML和PHP脚本以创建动态下拉列表 我希望使用上述代码可以解决您的问题。据我所知,您必

我试图从不同列的1个表中创建动态下拉列表,但我找不到任何适合我需要的教程

它有orang_tua表,其中有n_ibu和n_ayah,但我不知道如何创建动态下拉列表

这是orang_tua桌子

这是我的视图,但只能在下拉列表中显示1列值,该值仅为n_ibu

-达夫塔广场酒店- 这是模型

在视图页面中实现下面的HTML和PHP脚本,以创建动态下拉列表

我希望使用上面的代码可以解决您的问题。

在视图页面中实现下面的HTML和PHP脚本以创建动态下拉列表


我希望使用上述代码可以解决您的问题。

据我所知,您必须使用javascript来实现该功能。 假设您已经设置了两个选择输入:
<p>
<label for="ibu_select">Nama Ibu</label><br/>
<select name="id_orang_tua" id="ibu_select" >
    <option selected>-- Pilih dari daftar --</option>
    <?php 
    foreach($all_orang_tua as $orang_tua)
    {
    $selected = ($orang_tua['id'] == $this->input->post('id_orang_tua')) ? ' selected="selected"' : "";
    ?>
    <option value="<?= $orang_tua['id'] ?>" data-ayah="<?= $orang_tua['n_ayah'] ?>" <?= $selected ?> ><?= $orang_tua['n_ibu'] ?></option>
    <?php
    }
    ?>
</select>
</p>
<p>
<label for="ayah_select">Nama Ayah</label><br/>
<select name="n_ayah" id="ayah_select">
    <option id="ayah_select_val">-- Pilih dari daftar --</option>
</select>
</p>
脚本将分别根据第一个数据值中的每一个设置第二个下拉值

参考资料:


据我所知,您必须使用javascript来实现该功能。 假设您已经设置了两个选择输入:
<p>
<label for="ibu_select">Nama Ibu</label><br/>
<select name="id_orang_tua" id="ibu_select" >
    <option selected>-- Pilih dari daftar --</option>
    <?php 
    foreach($all_orang_tua as $orang_tua)
    {
    $selected = ($orang_tua['id'] == $this->input->post('id_orang_tua')) ? ' selected="selected"' : "";
    ?>
    <option value="<?= $orang_tua['id'] ?>" data-ayah="<?= $orang_tua['n_ayah'] ?>" <?= $selected ?> ><?= $orang_tua['n_ibu'] ?></option>
    <?php
    }
    ?>
</select>
</p>
<p>
<label for="ayah_select">Nama Ayah</label><br/>
<select name="n_ayah" id="ayah_select">
    <option id="ayah_select_val">-- Pilih dari daftar --</option>
</select>
</p>
脚本将分别根据第一个数据值中的每一个设置第二个下拉值

参考资料:



因此,您需要2个下拉列表,首先是一个n_ibu下拉列表,如果选择了该下拉列表,则将同一表格行中的n_ayah设置为第二个下拉列表值?是的,因为如果有人从另一行选择了不同的值,则该值不会是same@HastaDhana也许你可以帮我,所以你想要2个下拉列表,首先是一个n_ibu下拉列表,如果选择了该下拉列表,则将同一表格行中的n_ayah设置为第二个下拉列表值?是的,因为如果有人从另一行选择了不同的值,值不会是same@HastaDhana也许你可以帮我,我会试试,然后我会设置为解决,如果它可以工作,我已经尝试过,但它和我以前的代码一样,n_ibu我的意思是我想从以前的下拉列表中创建链接下拉列表,这样我可以选择n_ayah作为n_ibu的链接下拉列表。当我选择n_ibu时,第二个下拉列表将与n_ibu在同一行中具有相同的值,因为n_ayah在同一行中row@MuhamadFikri是否要更改基于下拉列表的第二个下拉列表中的值?你能用例子解释一下吗?首先是n_ibu,如果选择了它,那么从同一个表行设置n_ayah作为第二个下拉值。也许你可以再次阅读我的数据库,这样你就可以理解我的意思。我会尝试一下,然后我会设置为已解决,如果它可以工作,我已经尝试过了,但它与我以前为n_ibu编写的代码相同。我的意思是,我想从以前的下拉列表中创建链式下拉列表,以便我可以选择n_ayah作为n_ibu的链式下拉列表。当我选择n_ibu时,第二个下拉列表将与n_ibu在同一行中具有相同的值,因为n_ayah在同一行中row@MuhamadFikri是否要更改基于下拉列表的第二个下拉列表中的值?你能用例子解释一下吗?首先是n_ibu,如果选择了它,那么从同一个表行设置n_ayah作为第二个下拉值。也许你可以再看一次我的数据库,这样你就可以理解我的意思了。我试过用这个,但没用。这是我的密码。ibu的第一个下拉列表可以正常工作,但对ayahand和javascript不起作用。我应该把这个javascript放在同一个文件上,对吗?我做过这件事,但他们的眼睛还是那样,但我不知道为什么。你确定这段代码可以从数据库中获取数据吗?你可以不使用任何外部js库先进行检查就尝试,我担心你的附加库正在替换实际的选项元素,因此它不会工作。你说得对,你知道如何解决这个问题吗?我正在使用adminbsb引导,顺便说一句,我尝试过使用它,但没有成功。这是我的密码。ibu的第一个下拉列表可以正常工作,但对ayahand和javascript不起作用。我应该把这个javascript放在同一个文件上,对吗?我做过这件事,但他们的眼睛还是那样,但我不知道为什么。你确定这段代码可以从数据库中获取数据吗?你可以不使用任何外部js库先进行检查就尝试,我担心你的附加库正在替换实际的选项元素,因此它不会工作。你说得对,你知道如何解决这个问题吗?顺便说一下,我正在使用adminbsb引导
<p>
<label for="ibu_select">Nama Ibu</label><br/>
<select name="id_orang_tua" id="ibu_select" >
    <option selected>-- Pilih dari daftar --</option>
    <?php 
    foreach($all_orang_tua as $orang_tua)
    {
    $selected = ($orang_tua['id'] == $this->input->post('id_orang_tua')) ? ' selected="selected"' : "";
    ?>
    <option value="<?= $orang_tua['id'] ?>" data-ayah="<?= $orang_tua['n_ayah'] ?>" <?= $selected ?> ><?= $orang_tua['n_ibu'] ?></option>
    <?php
    }
    ?>
</select>
</p>
<p>
<label for="ayah_select">Nama Ayah</label><br/>
<select name="n_ayah" id="ayah_select">
    <option id="ayah_select_val">-- Pilih dari daftar --</option>
</select>
</p>
<script>

var selection = document.getElementById("ibu_select");
selection.onchange = function(event){
    var n_ayah = event.target.options[event.target.selectedIndex].dataset.ayah;
    if (n_ayah) {
        document.getElementById("ayah_select_val").value = n_ayah;
        document.getElementById("ayah_select_val").text = n_ayah;
    } else {
        document.getElementById("ayah_select_val").value = "";
        document.getElementById("ayah_select_val").text = "-- Pilih dari daftar --";
    }
};

</script>