我有这个:
var searchString = action + ? + 'search=' + search + '&filter='
action
变量可能已经有?parameter
或者没有。{/ p>
因此,我需要测试操作,如果它已包含?
,如果是这样,则附加&搜索。否则我需要使用?search
知道如何以简单的方式解决这个问题吗?
答案 0 :(得分:4)
var searchString = action + (action.indexOf('?') != -1 ? '&' : '?') + 'search=' + search + '&filter=';
答案 1 :(得分:3)
var searchString = action + ((action.indexOf('?') == -1) ? '?search=' : '&search=');
或者您可以使用jquery Query Plug-in http://plugins.jquery.com/project/query-object
答案 2 :(得分:1)
var startChar = action.indexOf('?') == -1 ? '?' : '&',
searchString = action + startChar + 'search=' + search + '&filter=';
答案 3 :(得分:0)
快速,不是超级可读的方式:
var hasQM = (/\?/).test(action);
var searchString = action + (!hasQM ? '?' : '&') + 'search=' + search + '&filter='
答案 4 :(得分:0)
var string = "?somerandonmestuffhere";
alert((string.match(/[?].*/) || ["?" + string])[0])
var string = "somerandonmestuffhere";
alert((string.match(/[?].*/) || ["?" + string])[0])