怎么加“?”用js提交表单时在字符串中?
Posted
技术标签:
【中文标题】怎么加“?”用js提交表单时在字符串中?【英文标题】:How to add "?" in string while submitting form with js? 【发布时间】:2022-01-15 21:18:10 【问题描述】:我用attr方法写了一个表单提交线程:
var href = a.attr('href');
if(href =='') return;
if(href.startsWith('http') || href.startsWith('//:'))
a.attr('href',href.trim());
if(href.indexOf(location.hostname) > -1)
return;
if(href.indexOf('<?php echo $_SERVER['SERVER_NAME']; ?>') > -1)
return;
a.attr('href','go.htm?uri='+href);
a.attr('rel','nofollow');
但是,它返回的URL不带?,例如我想返回https://example.abc.com/?ref=abc,返回结果将是https://example.abc.com/ref=abc不带“?”问号。
我正在努力解决这个问题,感谢任何有用的提示。
【问题讨论】:
【参考方案1】:您可以使用拆分函数字符串。用“?”分割你的网址并取第一个元素。
var yourRequiredLink = href.replace("?", '')
【讨论】:
还是把这个拆分成一个函数,在attr方法中使用这个函数好不好? 是的,您也可以这样做。这取决于您要遵循的项目规模和标准。如果只是为了学习/小项目,那么你可以无功而返。 href.split('?') 将返回一个由“?”分割的字符串数组。举个例子 ['example.abc.com', 'ref=abc'] 所以你会有部分 URL 没有“?”。 我想我有一个更好的解决方案来解决你的问题使用href.replace("?", '')
这应该可以解决问题@LLLgoyour
非常感谢你:D以上是关于怎么加“?”用js提交表单时在字符串中?的主要内容,如果未能解决你的问题,请参考以下文章
在JSP中没有表单,怎么用按钮(button)将数据提交给某个url,请教这个JS方法怎么写?