Hi Ankur,
Below is script , I got it working but it is inefficient cause of all the validation done on client side, need to understand if can be enhanced.

 

client callable = true,

On Click = markQuar()

Condition =current.install_status == '1' && current.assigned_to != ''

 

 

function markQuar() {
    var toQuar = [];
    var invalidRecs = [];
    var numSel = 0;
    var tblName = g_list.getTableName();
    var selSysIds = g_list.getChecked();
    var sysIDs = selSysIds.split(',');
    var lth = sysIDs.length;
    for (var i = 0; i < lth; i++) {
        //alert(sysIDs[i]);
        var a = new GlideRecord('alm_hardware');
        a.addQuery('sys_id', sysIDs[i]);
        a.query();
        if (a.next()) {

            if ((a.install_status == '1') && (a.assigned_to != '')) {
                toQuar.push(a.sys_id);
                //alert('Yes ' + a.display_name);
            } else {
                invalidRecs.push(a.display_name);
            }
        }
    }
    var message = '';
    if (invalidRecs.length > '0') {
        message = 'please confirm quarantine to be marked for ' + toQuar.length + ' assets.\n ' + 'Cannot quarantine ' + invalidRecs.length + ' asset, please check if status in use & assigned to :'; //+ invalidRecs.toString();
        for (var j = 0; j < invalidRecs.length; j++) {
            message += '\n' + invalidRecs[j].toString();
        }
    } else {
        message = 'please confirm quarantine to be marked for ' + toQuar.length;
    }
    var usrResponse = confirm(message);
    if (usrResponse == true) {
        var ga = new GlideAjax('TriggQuar');
        ga.addParam('sysparm_name', 'createQuarTask');
        ga.addParam('sysparm_entry_ids', toQuar.toString());
        ga.getXML(getDupTasks);
        // }

        function getDupTasks(response) {
            var answer = response.responseXML.documentElement.getAttribute("answer");
            if (answer) {
                alert('Qurantinemarke for ' + toQuar.length + 'Assets');
            }
        }

    } else {
        return false;
    }
}