Javascript 如何在Jquery的if语句中的key val中使用通配符

Javascript 如何在Jquery的if语句中的key val中使用通配符,javascript,jquery,Javascript,Jquery,我已经浏览了很多关于在选择器和运算符中使用通配符的资料,比如[id*='owner']等等,但我觉得我有一个更“独特”的地方。我试图得到一个字段隐藏,如果有人与一个特定的标签登录。jquery被设置为通过JSON查询为我获取标签,然后使用计数存储标签。 jso 下面是完整的jquery语句: var $j = jQuery.noConflict(); var KBOXUSER = ''; $j(document) .ready(function () { //Get logged in

我已经浏览了很多关于在选择器和运算符中使用通配符的资料,比如[id*='owner']等等,但我觉得我有一个更“独特”的地方。我试图得到一个字段隐藏,如果有人与一个特定的标签登录。jquery被设置为通过JSON查询为我获取标签,然后使用计数存储标签。 jso

下面是完整的jquery语句:

var $j = jQuery.noConflict();
var KBOXUSER = '';
$j(document) .ready(function () {
    //Get logged in User
    KBOXUSER = $j('*:contains("User: "):last') .text();
    var n1 = KBOXUSER.indexOf('User: ') + 6;
    var n2 = KBOXUSER.indexOf('Organization:');
    KBOXUSER = KBOXUSER.substring(n1, n2);
    $j.getJSON('/common/jkuery.php?id=104&query_type=sqlp&p1=' + KBOXUSER + '', function (data) {
        $j.each(data.json, function(key, val) {
            if (val != 'IT Department' && val != 'Owner - *') {
            $j("#ticket_form.edit table tbody tr td:contains('Status:')").hide();
            $j('#fields\\[status_id\\]').hide();
            };
        });     
    });
});
因此,我希望it部门能够找到非it部门的人员并隐藏这些人员,以及非所有者的人员-*可能是所有者-CSR、所有者A/p,等等。我遇到了运算符&&和| |的问题,因为它们都提供不同的结果。我在另一个查询中使用了OR | | just fine,它在下拉列表中减少了选择,但在这里似乎不起作用

旁注-即使将上面的设置为一个静态项,比如Owner-CSR,我也没有得到正确的结果,我相信这是因为它在线程中的位置。如果需要,我可以将jquery语句更改为order OWNER-*如果需要的话,首先

如果没有可用的通配符,我甚至会满足于只运行了一次运算符,例如:

if (val != 'IT Department' && val != 'Owner - CSR' && val != 'Owner - Warehouse) {
但这似乎对这些运营商不起作用


救命啊

当您比较字符串时,如“this”!='这里没有通配符,只是字符串,所以它们必须精确匹配,即使没有空格,否则它就不起作用了。你是说我不能在字符串中通配符,我只需要写出我可能的匹配?明白,我可以接受。我不能忍受的是操作员没有像我希望的那样“工作”。让我们称之为问题的第2部分。我是说你不能使用通配符,因为在*类字符串中,你可以使用或regex以任何可能的方式部分匹配字符串。
if (val != 'IT Department' && val != 'Owner - CSR' && val != 'Owner - Warehouse) {