var tagMatch;
if (tagMatch = window.location.href.match(/\/questions\/ask\?tags=([^&]+)/)) {
$(function() {
if (!$('#tagnames').val().length) {
$('#tagnames').val(unescape(match[1].replace(/\+/g, ' '));
}
});
}
大家好,这段JS代码应该匹配/questions/ask?tags=some-tag
形式的URL的后半部分,然后插入该部分包含的文本tags=
之后的 URL 到 ID 为 #tagnames
的文本框。我究竟做错了什么?我怎样才能解决这个问题?
我还在学习,所以如果你想告诉我如何修复我的正则表达式或其他任何东西,请做!
最佳答案
我认为错误在于这一行
if (!$('#tagnames').val().length)
length 将返回一个数字并根据数字检查它。
有点像
if ($('#tagnames').val().length > 0)
我认为没有必要将 document ready 放在 if 语句中。这不是更好吗。
$(function() {
var tagMatch;
if (tagMatch = window.location.href.match(/\/questions\/ask\?tags=([^&]+)/))
{
if ($('#tagnames').val().length > 0)
{
$('#tagnames').val(unescape(match[1].replace(/\+/g, ' '));
}
}
});
关于javascript - Javascript 中的表单填写不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2385074/