需求:第1,2条属于同一设备相同类型的报警,第3与第1,2属于同一设备不同类型的报警,现在要求处理1或2任一条报警时,同步处理另一条,并且不影响3。
核心代码(使用Jquery属性选择器)
属性用“[ ]”,多个属性之间加逗号“,”表示“或”,不加表示“且”
var cameraid = window.currentAlarmModalData.el.parent().attr('cameraid')
var sensorid = window.currentAlarmModalData.el.parent().attr('sensorid')
var alarmtypeid = window.currentAlarmModalData.el.parent().attr('alarmtypeid')
var searchStr = sensorid ? '[sensorid=' + sensorid + '][ alarmtypeid=' + alarmtypeid + ' ]' : '[cameraid=' + cameraid + '][ alarmtypeid=' + alarmtypeid + ' ]'
var list = window.currentAlarmModalData.el.parent().siblings(searchStr)
for (var i = 0; i < list.length; i++) {
$(list[i]).find('.deal').removeClass('deal').html('已处理')
}
完整代码
$.ajax({
type: "get",
dataType: "json",
url: window.baseUrl + 'main/processing-alarm',
data: {
placeId: window.currentAlarmModalData.placeId,
alarmRecordId: window.currentAlarmModalData.alarmRecordId,
remarks: remarks,
noteUser: $('#recordPerson').val(),
noteUserName: noteUserName,
repair: $('#addstatus2').prop("checked") ? 1 : '',
resetStatus: $('#addstatus').prop("checked") ? 1 : '',
processingStatus: processingStatus,
notAlarmBeginTime: notAlarmBeginTime,
notAlarmEndTime: notAlarmEndTime,
processingUser: localStorage.userId || '1'
},
success: function (res) {
if (res.code === 0) {
layer.msg('处理成功', {
offset: '15px',
time: 2000,
icon: 1
});
getWarningTips()
topbar()
// window.modalAlarmDetailClose()
// window.getAlarmDetailsNum1()
$('#modal_alarm_detail .fireBakSelect .option').remove()
$('#modal_alarm_detail .fireBakSelect .newSelect').append(window.allOptions)
console.log(window.currentAlarmModalData)
if (window.currentAlarmModalData.el) {
window.currentAlarmModalData.el.removeClass('deal').html('已处理')
var cameraid = window.currentAlarmModalData.el.parent().attr('cameraid')
var sensorid = window.currentAlarmModalData.el.parent().attr('sensorid')
var alarmtypeid = window.currentAlarmModalData.el.parent().attr('alarmtypeid')
var searchStr = sensorid ? '[sensorid=' + sensorid + '][ alarmtypeid=' + alarmtypeid + ' ]' : '[cameraid=' + cameraid + '][ alarmtypeid=' + alarmtypeid + ' ]'
var list = window.currentAlarmModalData.el.parent().siblings(searchStr)
for (var i = 0; i < list.length; i++) {
$(list[i]).find('.deal').removeClass('deal').html('已处理')
}
}
window.modalAlarmDetailClose()
// window.getAlarmDetailsNum1()
} else {
layer.msg(res.msg, {
offset: '15px',
time: 2000,
icon: 2
});
}
}
})