Javascript 如何在url中的字符串之间添加连字符

Javascript 如何在url中的字符串之间添加连字符,javascript,php,jquery,Javascript,Php,Jquery,我有一个表单,其中有一个文本字段和ine submit按钮。单击submit按钮,它进入下一个PHP页面。用户可以在文本字段中输入文本。文本字段可以包含n个文本字符串,用空格分隔。就像用户输入文本一样 我叫彼得 我想文本更改为我的名字是彼得在网址。 当用户单击submit按钮时,url应该类似于submit.php?search=我的名字是peter <form action="submit.php" method="get"> <input type="text" name=

我有一个表单,其中有一个文本字段和ine submit按钮。单击submit按钮,它进入下一个PHP页面。用户可以在文本字段中输入文本。文本字段可以包含n个文本字符串,用空格分隔。就像用户输入文本一样 我叫彼得 我想文本更改为我的名字是彼得在网址。 当用户单击submit按钮时,url应该类似于submit.php?search=我的名字是peter

<form action="submit.php" method="get">
<input type="text" name="search" id="search">
<input type="submit" name="submit" value="submit">
</form>


请指导如何在url中的字符串中添加连字符。

str\u replace可以使用,或者如果您想使用正则表达式,可以尝试preg\u replace(“/[-]/”,“”,$yourString)


变量处理程序=函数(元素){
element.form.search.value=element.form.search.value.replace(//g,'-');
};

您应该在提交URL之前对其进行编码:

  $('form').submit(function(){
  var val = $(this).find('#search').val();
  $(this).attr('action','submit.php'+encodeURI(val))
 })
例如:

  $('form').submit(function(){
  var val = $(this).find('#search').val();
  $(this).attr('action','submit.php'+encodeURI(val))
 })