2013-07-15 73 views
1

在客户端的node.js应用程序中,我在按钮单击事件中使用以下代码来调用node.js/express方法“getProjectDetails”,但由于散列(#)字符,Express发出错误,如“输入未结束”。所以问题是如何逃避传递给node.js调用的参数查询字符串中的散列(#)字符?node.js通过查询字符串传递参数

// CLIENT SIDE CALLING CODE IN THE CLICK EVENT OF A BUTTON 
window.location.href = rootURL + 'getProjectDetails?project=ABCD#EFGH BLAH BLAH'; 

鉴于以下工作正常:

window.location.href = rootURL + 'getProjectDetails?project=ABCDEFGH BLAH BLAH'; 

回答

0

您需要使用%23#逃跑的哈希值。

+1

我愿意这样做手动,但想了解为什么JSON.stringify不编码,因为我的实际参数是通过paramString = JSON.stringify(paramJSON)获得,然后我将它追加到node.js调用。 – sskasim

+1

谢谢帕克,你的建议修正了它。 var param =“ABCD#EFGH BLAH BLAH”; var paramNew = param.replace(“#”,“%23”); window.location.href = rootURL +'getProjectDetails?project ='+ paramNew; – sskasim

相关问题