用空格传递字符串变量

在以下代码中:

 function updateView(set) { $.post(""+set, function( data ) { $( "#content" ).html( data ); }); }  

‘set’是一个字符串变量,可以在其中包含空格。 我注意到它有空格时它无法正常工作。 我怎样才能解决这个问题?

编辑:为清楚起见,我想保持空间完整。

您必须使用replace() '%20'中间空格( ' ' )并使用trim()消除边界空间( ' ' trim()

所以使用以下代码 –

  

使用$.trim(set)删除前导或尾随空格

 set.replace(/ /g,"+") 

要么

 encodeURI(set) 

保持字符串内的空格
(请参阅何时使用escape而不是encodeURI / encodeURIComponent? )

要做到这两者,只需链接它们

 $.trim(set).replace(/ /g,"+") 

请注意,如果您愿意,可以使用%20而不是加号。

但这不是一个参数吗? 如果是这样,也许你想传递它

 $.post("",{"set":$.trim(set).replace(/ /g,"+")}, 

使用修剪

  

你也可以使用string.replace

  var set= set.replace(/ /g,"+") ;// like that way in this all the spaces removes 

拉杰什保罗的答案做得很好,我不知道为什么有人给你投票。

很好的答案Rajesh,它对我有用。 这就是我所做的: '&p_na2=' + (Txtva3).trim().replace(/ /g, '%20');