通过PHP将数据保存到SQL时忽略空的组合框

问题描述 投票:0回答:1

我有一个包含4组4个组合框的表格,当进行不同的选择时可以看到它们。我希望4组组合框将数据放入4个表格单元格(每组一个),而忽略其他3个空白组合框。箱子如下布局;

Lab set 1 - Sample Type 1 - Sample Type 2 - Sample Type 3 - Sample Type 4

Lab set 2 - Sample Type 5 - Sample Type 6 - Sample Type 7 - Sample Type 8

Lab set 3 - Sample Type 9 - Sample Type 10 - Sample Type 11 - Sample Type 12

Lab set 4 - Sample Type 13 - Sample Type 14 - Sample Type 15 - Sample Type 16

每个实验室设置只能随时进行一次选择,因此如果选择样品类型1,样品类型5,样品类型11和样品类型12,则其余样品类型将为NULL。

我希望每个实验室设置只有一个表格单元格,以便以后更容易显示数据,是否可以忽略空值并填充Lab集合1,2,3,4单元格中仅选择数据还是我试图做不可能的事情?

这是我对其中一个组合框的编码尝试,其中包含属性已禁用以及隐藏的可见性;

<select name="Lab1" id="Lab1" style="visibility:hidden;" onChange="if (this.value=='Alpha Bio Labs'){this.form['Samp1'].style.visibility='visible'}if (this.value=='Alpha Bio Labs'){this.form['Samp2'].style.visibility='hidden'}if (this.value=='Alpha Bio Labs'){this.form['Samp1'].prop.disabled='false'}if (this.value=='Alpha Bio Labs'){this.form['Samp2'].prop.disabled='true'}">
               <option selected>Lab</option>
                <option value="Alpha Bio Labs">Alpha Bio Labs</option>
                <option value="Cellmark">Cellmark</option>
                <option value="DNA Legal">DNA Legal</option>
                <option value="The Doctors Lab">The Doctors Lab</option>
              </select>

可见性的onChange编码如下;

//visible
if (this.value=='Alpha Bio Labs'){this.form['Samp1'].style.visibility='visible'}
//hidden
if (this.value=='Alpha Bio Labs'){this.form['Samp2'].style.visibility='hidden'}

我写了一组额外的函数,如下所示;

//Active    
if (this.value=='Alpha Bio Labs'){this.form['Samp1'].prop.disabled='false'}
//Not Active
if (this.value=='Alpha Bio Labs'){this.form['Samp2'].prop.disabled='true'}

上面的代码将与可见代码一起运行,因为我希望不活动的函数不可见,我的测试表明非活动函数仍然可见。

我在网上遇到过一些Javascript,并试图让它变得合适,我把代码放在下面;

var visopt = document.getElementsById('Samp1');
for(var  strUser = visopt.options [visopt.selectedIndex] .style.visibility;) {
    if(strUser.style.visibility='visible') {
        visopt.disabled = true;
    }
}

我是在正确的轨道上吗?

php filter combobox null
1个回答
0
投票

我想通了,我只是为每个部分的实验室选择的OnChange函数添加第二行代码,如下所示:

onChange="if (this.value=='Alpha Bio Labs'){this.form['Samp1'].style.visibility='visible'}
              if (this.value=='Alpha Bio Labs'){this.form['Samp1'].disabled=false}"

对每个条目重复和更改此代码,以确保它执行所需的操作。

感谢@mickmackusa在早期阶段的帮助,它让我走上了正确的轨道。

© www.soinside.com 2019 - 2024. All rights reserved.