jQuery中的正确语法是什么

What would be the right syntax in jQuery

本文关键字:语法 是什么 jQuery      更新时间:2023-09-30

我有一个jquery函数,它在提交事件时生成一个url。如果其中一个参数没有定义,则应跳过添加到url的

        var category        =$("#prod_category").val();
        var group           =$("#prod_group")
        window.location.href = "/page/" +
            **//add to url if category is definned**
        encodeURI(category) + "/" +
            **//add to url if group is definned**       
        encodeURI(group) + "/" +

您可以简单地声明if (category)。如果category的值的长度大于零,则返回true

var url = "/page/";
if (category){
  url = url + encodeURI(category) + "/";
}
if (group){
  url = url + encodeURI(group) + "/";
}

编辑:将值设置为categorygroup时,请确保修剪元素可能包含的任何空白。例如:

var category = $.trim($("#prod_category").val());

您可以使用$.grep:来完成此操作

var category = $.trim($("#prod_category").val());
var group = $.trim($("#prod_group").val());
window.location.href = '/page/' + $.grep([category, group], function(s) { return s != null && s.length }).join('/');

尝试:

var category =$.trim( $("#prod_category").val() );
var group    =$.trim( $("#prod_group").val() );
var urlVal = "/page/";
if( category !== "") {
  urlVal += encodeURI(category);
}
if( group !== "") {
 urlVal += encodeURI(group);
}
window.location.href = urlVal;

使用

if($.trim(category) != ''){
}
if($.trim(group) != ''){
}