我有“订购”主表,下拉字段为Order_Type(标准和目标选项),“测试”为详细表,带有两个编辑控制字段,如“测试代码”和“目标基因”。详细信息表单位于主order_add.php表单上的子表单中。
我正在寻找的是当用户从主页面上的下拉列表中选择“标准”选项时,详细页面上的“目标基因”编辑控件将隐藏,但将显示“测试代码”控件。类似地,当在母版页上选择“目标”选项时,“测试代码”编辑控制字段将隐藏,但应显示“目标基因”控件。我的整个项目都是用php mysql开发的。
我在主Order_add.php页面上使用以下代码作为“Javascript onLoad事件”来实现这个目标,没有运气。
function OnPageLoad(pageObj,pageid,proxy,inlineRow){
var ctrOrdType = Runner.getControl(pageid,'ordtype');// on master page
var ctrTestCode = Runner.getControl(pageid, 'testcode');// on detail page
var ctrTarGene = Runner.getControl(pageid, 'targetgene');//on detail page
$("tr[data-fieldname='testcode']").show();
$("tr[data-fieldname='targetgene']").hide();
ctrOrdType.on('change',function(e){
if(this.getValue()=='2'){ //2 for Target option
$("tr[data-fieldname='testcode']").hide();
$("tr[data-fieldname='targetgene']").show();
}else{
$("tr[data-fieldname='testcode']").show();
$("tr[data-fieldname='targetgene']").hide();
}
});
}
以下是此表单的HTML模板
<tr class="" data-fieldname="ordtype">
<td class="rnr-label">
Ordtype
</td>
<td class="rnr-control style3">
<span id="edit1_ordtype_0" class="rnr-nowrap"><select size="1" id="value_ordtype_1" name="value_ordtype_1" style="width: 207px"><option value="">Please select</option><option value="1">std</option><option value="2">tarv</option></select></span>
</td>
</tr>
<div class="rnr-dcaption">
Test
</div>
<div id="detailPreview3" class="FancyAqua page-list2 rnr-pagewrapper dpStyle"><div id="search_suggest" class="search_suggest"></div>
<div class="rnr-page">
<div class="rnr-top rnr-hiddenblock">
</div>
<div class="rnr-middle">
<div class="rnr-left rnr-hiddenblock">
</div>
<div class="rnr-center ">
<div class="rnr-cw-recordcontrols rnr-s-1 asbuttons FancyAqua">
<div class="rnr-c rnr-ch rnr-c-recordcontrols">
<div class="style1 rnr-bl rnr-b-recordcontrols_new ">
<a href="#" class="rnr-button" name="inlineAdd_3" href='test_add.php' id="inlineAdd3">Inline Add</a>
</div>
<div class="style1 rnr-bl rnr-b-recordcontrol rnr-hiddenbrick">
<a href="#" class="rnr-button" name="revertall_edited3" id="revertall_edited3" style="display:none;" >Cancel</a>
</div>
<div class="rnr-hfiller"></div>
</div>
</div>
<div class="rnr-cw-grid rnr-s-grid asbuttons FancyAqua rnr-hiddencontainer">
<table class="rnr-c rnr-cont rnr-c-grid rnr-b-grid rnr-gridtable hoverable " cellpadding="0" >
<thead>
<tr class="rnr-toprow style1 rnr-hiddenelem" >
<th iEditCont="all"> </th>
<th class="rnr-gridfieldlabel rnr-field-number">
<a >Testcode</a>
</th>
<th class="rnr-gridfieldlabel rnr-field-text">
<a >Test</a>
</th>
<th class="rnr-gridfieldlabel rnr-field-text">
<a >Targetcode</a>
</th>
<th class="rnr-gridfieldlabel rnr-field-text">
<a >Targetgene</a>
</th>
<th class="rnr-gridfieldlabel rnr-field-text">
<a >Notes</a>
</th>
<th class="rnr-edge"> </th>
</tr>
</thead><tbody>
<tr class="rnr-row style1 gridRowAdd rnr-hiddenelem" >
<td class="rnr-cc rnr-bc rnr-icons" iEditCont="all" >
<a class="rnr-button-img" id="inlineEdit_add3" data-icon="inlineedit" title="Inline Edit"></a>
</td>
<td class=" rnr-field-number" > <span id="add3_testcode" ></span>
</td>
<td class="rnr-field-text" ><span id="add3_test" ></span>
</td>
<td class="rnr-field-text" ><span id="add3_targetcode" ></span>
</td>
<td class="rnr-field-text" ><span id="add3_targetgene" ></span>
</td>
<td class="rnr-field-text" ><span id="add3_notes" ></span>
</td>
<td class="rnr-edge"> </td>
</tr>
</tbody>
</table>
我不能在此项目中使用除“Javascript onLoad events”之外的任何其他选项。我迫切需要你的帮助才能做到这一点。我很感激你的帮助。我不是一个PHP程序员而是学习者。请帮我。感谢。