0

送信イベントでURLを生成するjquery関数があります。パラメータが定義されていない場合は、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) + "/" +
4

4 に答える 4

4

簡単に述べることができます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());
于 2012-07-17T10:11:31.597 に答える
2

$.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('/');
于 2012-07-17T10:46:15.783 に答える
1

試す:

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;
于 2012-07-17T10:14:46.053 に答える
0

使用する

if($.trim(category) != ''){
}
if($.trim(group) != ''){
}
于 2012-07-17T10:12:08.543 に答える