我是SalesForce的新手,VisualForce页面使用VisualForce,因为它比Apex更灵活地设计页面。
现在,我一直在用id "Lop“将SalesForce对象数据输入到SelectBox中。
这是我的VisualForce代码,这里是我使用HTML和CSS进行设计的地方:
<apex:page docType="html-5.0" controller="ThemMoiController">
<!-- CSS -->
<style>
table{
border:1px solid black;
}
td{
text-align: middle
}
#NgaySinh, #ThemMoi{
box-sizing: border-box;
min-width: 10px;
max-width: 100%;
width: 100%;
}
</style>
<!-- HTML -->
<table>
<tr>
<td>
<u>Quay lại</u>
</td>
</tr>
<tr/>
<tr>
<td/>
<td>Họ</td>
<td>
<input id="Ho" type="text" value="{!hoVal}"/>
</td>
</tr>
<tr>
<td/>
<td>Tên</td>
<td>
<input id="Ten" type="text" value="{!tenVal}"/>
</td>
</tr>
<tr>
<td/>
<td>Giới tính</td>
<td>
<input id="GioiTinh" type="checkbox" value="{!gioitinhVal}"/>
</td>
</tr>
<tr>
<td/>
<td>Ngày sinh</td>
<td>
<input id="NgaySinh" type="date" value="{!ngaysinhVal}"/>
</td>
</tr>
<tr>
<td/>
<td>Điểm 1</td>
<td>
<input id="Diem1" type="text" value="{!diem1Val}"/>
</td>
</tr>
<tr>
<td/>
<td>Điểm 2</td>
<td>
<input id="Diem2" type="text" value="{!diem2Val}"/>
</td>
</tr>
<tr>
<td/>
<td>Điểm 3</td>
<td>
<input id="Diem3" type="text" value="{!diem3Val}"/>
</td>
</tr>
<tr>
<td/>
<td>Lớp</td>
<td>
<select id="Lop"/>
</td>
</tr>
<tr/><tr/>
<tr>
<td/><td/>
<td>
<button id="ThemMoi" type="button">Thêm mới</button>
</td>
</tr>
</table>
</apex:page>这是我的控制器Apex代码:
public class ThemMoiController {
public string hoVal { get; set; }
public string tenVal { get; set; }
public boolean gioitinhVal { get; set; }
public date ngaysinhVal { get; set; }
public double diem1Val { get; set; }
public double diem2Val { get; set; }
public double diem3Val { get; set; }
public void doInsert(){
HOCSINH__c hs = new HOCSINH__c();
hs.HO__c = hoVal;
}
}非常感谢你的帮助。
发布于 2022-03-17 11:15:12
您可以创建一个变量,它将是lop的列表。
然后在构造函数中,使用soql查询获取选择下拉列表中要显示的lop对象的所有记录,并将soql查询的结果分配给上述变量,即lop sobject列表。
然后创建getter方法,如下所述,它将返回selectOption类的列表。将下拉值从lop变量列表中放入selectOption变量列表中。
public List<SelectOption> getItems() {
List<SelectOption> options = new List<SelectOption>();
options.add(new SelectOption('US','US'));
options.add(new SelectOption('CANADA','Canada'));
options.add(new SelectOption('MEXICO','Mexico'));
return options;
} 使用下面的代码在VF页面上实现选择功能。
<apex:form>
<apex:selectList value="{!variableToStoreSelectedValue}" multiselect="true">
<apex:selectOptions value="{!items}"/>
</apex:selectList><p/>
</apex:form>转到doc链接以获得更多详细信息:https://developer.salesforce.com/docs/atlas.en-us.234.0.pages.meta/pages/pages_compref_selectList.htm
发布于 2022-03-16 14:40:33
->使用getter setter创建新的sobject变量,并在构造函数中初始化该变量。
然后,->在vf中使用这个sobject变量从用户输入字段值。
->更新doInsert方法以创建新记录。
先端控制器:
public class ThemMoiController {
public string hoVal { get; set; }
public string tenVal { get; set; }
public boolean gioitinhVal { get; set; }
public date ngaysinhVal { get; set; }
public double diem1Val { get; set; }
public double diem2Val { get; set; }
public double diem3Val { get; set; }
public HOCSINH__c hs { get; set; }
public ThemMoiController(){
hs = new HOCSINH__c();
}
public void doInsert(){
insert hs;
system.debug('---->'+hs);
}
}VF页面:
<apex:page docType="html-5.0" controller="ThemMoiController">
<!-- CSS -->
<style>
table{
border:1px solid black;
}
td{
text-align: middle
}
#NgaySinh, #ThemMoi{
box-sizing: border-box;
min-width: 10px;
max-width: 100%;
width: 100%;
}
</style>
<apex:form>
<!-- HTML -->
<table>
<tr>
<td>
<u>Quay lại</u>
</td>
</tr>
<tr>
<td>name</td>
<td>
<apex:inputField value="{!hs.name}"/>
</td>
</tr>
<tr>
<td>Họ</td>
<td>
<apex:inputField id="Ho" value="{!hs.HO__c}"/>
</td>
</tr>
<tr>
<td>
<apex:commandButton action="{!doInsert}" value="Thêm mới" />
</td>
</tr>
</table>
</apex:form>
</apex:page>->,当我们单击'Thêmới‘按钮时,将在HOCSINH__c对象中创建一个新记录。
https://stackoverflow.com/questions/71494533
复制相似问题