是否有一种方法使表单总是以https://?开头



我设置了一个表单,当在设置中输入值时它会发生变化。问题是,当有人输入google.com而不是https://google.com时,链接不起作用。我想知道是否有任何方法可以让表单始终显示https://,然后用户输入他们的链接。

我希望https://包含在他们输入的链接中,而不是像占位符一样消失。有什么办法能把这件事做完吗?

这是我的代码的具体形式。

type="text"
value={logoLink}
placeholder="https://yourwebsitehere.com"
onChange={(event) => setLogoLink(event.target.value)}
/>
<Button type="submit">Save</Button>

你可以删除不超过"//"并加上"https://",如:

let s = "google.com";
const re = /^.*://///;
let u = new URL("https://" + s.replace(re, ""));
console.log(u.href);

输出:

https://google.com/

,输出与let s = "http://google.com";相同。


或者<input type="url">可以为您强制用户添加协议。

相关内容

最新更新