使用Javascript,如果用户单击非表单元素,我希望获取表单字段中的任何内容
我有一个应用程序的登录表单,我们不能更改供应商提供的后端,但我们可以更改模板ie:html和javascript。它下面有一个忘记密码链接。几乎所有用户都只需点击链接,但有些用户输入用户名,反复尝试几次,然后点击忘记密码链接 我想做的是使用javascript查看用户名字段,如果它有任何内容,请更改忘记密码链接的URL,以指向密码恢复的下一步 因此,当用户单击用户名字段中没有值的链接时,链接会转到: 如果用户名字段中有值,我希望链接解析为: {username}使用Javascript,如果用户单击非表单元素,我希望获取表单字段中的任何内容,javascript,Javascript,我有一个应用程序的登录表单,我们不能更改供应商提供的后端,但我们可以更改模板ie:html和javascript。它下面有一个忘记密码链接。几乎所有用户都只需点击链接,但有些用户输入用户名,反复尝试几次,然后点击忘记密码链接 我想做的是使用javascript查看用户名字段,如果它有任何内容,请更改忘记密码链接的URL,以指向密码恢复的下一步 因此,当用户单击用户名字段中没有值的链接时,链接会转到: 如果用户名字段中有值,我希望链接解析为: {username} 易于操作?尝试收听输入的更改事件
易于操作?尝试收听输入的更改事件或按下键,然后更改链接 jQUery
$('.selector').change(function(){
$('a#forgot').attr('href','your html address here').html('The text displayed here')
});
是的,很容易做到:
在标记中,将链接的href保留为第一个url,这样,如果用户关闭了JS,它仍然可以为他们工作。
将onclick处理程序添加到检查用户名字段值的链接中,如果该字段不为空,则更改链接的href。
代码:
您的链接和用户名字段需要设置id以匹配您在JS中使用的内容。您可以获取输入值并根据长度或值进行检查 根据该值,您可以更改URL 参见小提琴:
我会将onchange事件绑定到username字段,然后如果有内容,则更改链接。我喜欢这种方法,但无论表单字段中是否有内容,我都会得到以下URL:啊,看起来代码已经更新:var username=document.getElementByIdusername.value;是的,对不起,就在我点击提交按钮后,我意识到我没有输入.value,所以我很快编辑了它,希望没有人注意到。请注意,如果用户按下浏览器的“停止”按钮并清除“用户名”字段,您可能需要添加一个else case来重置默认url。或者,完全删除if,然后测试服务器端的id参数是否为空。
window.onload = function() {
var link = document.getElementById("yourLinkId");
link.onclick = function() {
var username = document.getElementById("username").value;
if (username != "") {
link.href = "http://example.com/system/lookup.html?id=" +
encodeURIComponent(username);
}
};
};