javascript - 调用字符串时出错 :indexOf

标签 javascript indexof

var ndx = url.indexOf(parameter ); 导致代码返回而不显示以下警报。显示网址正确的警报。

function setFrameSrc() {
    var url = document.location;
    if (null == url) {
        alert('Javascript Error: Null Object - document.location');
        return;
    }
    alert('URL = ' + url);

    var parameter = '?image=';
    var ndx = url.indexOf(parameter);
    if (ndx < 0) {
        alert('Parameter not found = ' + parameter);
        return;
    }
    alert('Index of ' + parameter + ' = ' + ndx);

    var frame = document.getElementById('pframe');
    if (null == frame) {
        alert('Javascript Error: Null Object - frame');
        return;
    }
    frame.src = url.substring(ndx);
}

这段代码有什么问题?

最佳答案

document.location 尽管看起来很像,但它并不是一个字符串。您需要 document.location.href

更好的是,您可以使用 document.location.search,它仅包含 ? 及其之后的部分(并且不包括 #之后您就不再考虑)。

关于javascript - 调用字符串时出错 :indexOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15456241/

相关文章:

swift - 索引(: element) does not exist

java - 从特定索引之后和之前的列表中删除所有元素

javascript - Vue JS - indexOf 数组不是函数

javascript - 通过两种不同的方式获取 req.body

javascript - HTML Mobile - 强制隐藏软键盘

javascript - MongoDB 中的 "Generic Collection"?

javascript - Browserify 外部需要 Grunt-Browserify

java - 覆盖 LinkedList 中的 indexOf 以检查身份,而不是相等性

python - 访问键内的索引/值 (Python)

javascript - 如何使用 async 和 wait 来获取订阅 API 调用的返回值