未正确更新隐藏的输入字段
Hidden input field not being updated properly
我正在尝试获取引用并更新引用,以便我的用户可以返回到他们返回的页面。我有一个隐藏的输入字段,它保存重定向的值。我在那里有一个静态值,以防引用为空。如果referrer不是空的,我想更新它的值。这是我写的代码,我甚至测试了它,它说它已经更新了,但是,我没有被正确重定向,所以它不起作用。
我已经编写了JavaScript和HTML(请记住,我已经正确地链接了文件等):
$(document).ready(function(){
if (document.referrer != "") {
document.getElementsByName("redirect").value = document.referrer;
var test = "false";
if (document.getElementsByName("redirect").value == document.referrer){
test = "true";
}
alert(test);
}
});
<script src="js/referrer.js"></script>
<input type="hidden" name="redirect" value="https://www.google.com" />
我觉得这是一个小错误,或者可能有某种标准我没有遵循。
谢谢你的帮助!我很感激你的真知灼见!
我看不出你给我的问题是什么。但我可以说的是,如果你要在一个地方使用JQuery(文档就绪函数),那么你也应该使用它来获取输入字段的值。
如果您在输入字段中输入一个Id,而不是按名称输入,也会有所帮助。Id是获取特定元素的最佳方式。这也可能是你的问题。
然后使用进行调用
$("#ID").val()
所以你的代码会变成:
if($("#ID").val() === document.referrer)
我也建议使用三重相等。但这完全取决于你。
我从来没有用document.referrer做过任何事情,但可能还有更好的方法。
一件奇怪的事情是,您将这两个东西设置为彼此相等的
document.getElementsByName("redirect").value = document.referrer;
然后立即测试它们是否相等。
if (document.getElementsByName("redirect").value == document.referrer)
我不能说这是你的问题,但这是糟糕的编码,应该修复。
我想一个字母会让你在这里绊倒。
if (document.getElement**s**ByName("redirect").value == document.referrer){
"byName"没有单数等价物,所以最终会得到一个数组(或者至少是一个类似数组的对象)。与ID不同,允许多个输入具有相同的名称。最简单的解决方案是:
if (document.getElementsByName("redirect")[0].value == document.referrer){
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 如何在HTML输入字段中添加不可删除的后缀
- 互斥单选按钮和相应的输入字段
- 在IE9中的输入字段中输入焦点最近按钮
- 选中单选框时将属性添加到输入字段
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 我如何在数字插入中使用逗号,这样它就不会'不要破坏我的输入字段
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 输入字段将't获取更新的值
- 如何选择多个输入字段并删除所需的属性
- 输入字段,只接受0到12之间的数字
- 单击鼠标,用MySQL数据填充html表单输入字段
- 使用jquery将输入字段转换为文本
- Model中的Typeahead返回空值以形成输入字段
- 如何从查询字符串中的输入字段发回文本
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 将值传递给jquery创建的输入字段