具体代码
前端代码:
<ion-searchbar placeholder="请输入姓名" (ionChange)="onSearchChange($event)" [debounce]="250" [(ngModel)]="search">
</ion-searchbar>
// 模糊查询
onSearchChange($event) {
const api = 'NO1System/no1/ContractCheckController/selectName?search=' + this.search + '&CheckState=0';
this.http.get(api).subscribe((Response: any) => {
this.emailName = Response.json().data;
});
}
后端代码:
public List<ZWHPaymentScreenshotDTO> selectName(string search, byte CheckState)
{
var checkState = new MySqlParameter("@checkState", CheckState);
using (NO1DBContext cxt = new NO1DBContext())
{
string sql = @"SELECT user_name AS studentName,ta.id AS studentId,ts.year_time AS yearTime FROM tc_allusers ta RIGHT JOIN to_payment_screenshot ts ON ta.id = ts.student_id WHERE user_name like " + "'%" + search + "%' AND check_state=@checkState";
return cxt.Database.SqlQuery<ZWHPaymentScreenshotDTO>(sql,checkState).ToList();
}
}
隐藏和显示div,注意id是否有数据,不然
所以
// 模糊查询
onSearchChange($event) {
if (this.search === null || this.search === "") {
document.getElementById('beforeA').style.display = 'block';
document.getElementById('afterA').style.display = 'none';
document.getElementById('nothingA').style.display = 'none';
} else {
const api = 'NO1System/no1/ContractCheckController/selectName?search=' + this.search + '&CheckState=0';
this.http.get(api).subscribe((Response: any) => {
if (Response.json().data.length >= 1) {
this.emailName = Response.json().data;
document.getElementById('afterA').style.display = 'block';
document.getElementById('beforeA').style.display = 'none';
document.getElementById('nothingA').style.display = 'none';
} else {
document.getElementById('beforeA').style.display = 'none';
document.getElementById('afterA').style.display = 'none';
document.getElementById('nothingA').style.display = 'block';
}
console.log(this.emailName);
});
}
}