0

I am new on this website, and I am also new at Javascript. What I would do is get a value from a link, eg: http://bricks.couponmicrosite.net/JavaBricksWeb/LandingPage.aspx?O=107905&C=MF&CPT=qwbc74g7HdLtKVVQ1oNe&P=test&tqnm=td3ffdn764156741

I need to take this value: O=107905, if it is only one code I need to run a file (file A),

if it look like this: O=107905~107906, then I need to run a different file (file B).

What I thought is create a function with javascript where if it is (~) is missing, then will be used the file A, if there is one or more than one of (~) then the file B will start to work.

Many thanks in advance!

0

3 Answers 3

2

Well. We really do encourage you to provide your own code first before providing solutions, but this is a fairly simple problem in javascript. Here's my take on it.

The first problem you have to solve is actually getting the query string parameters in a meaningful format. Here I create an object that uses the query string keys as the object keys (IE 9+ only because of the forEach)

var tmpObject = {}
location.search.substr(1).split('&').forEach(function(item){
    var o = item.split('=');
    tmpObject[o.shift()] = o.shift();
});

Then it's just a matter of making sure the query string contained the target object (in this case "O") and determine if there is more than one.

if(tmpObject.hasOwnProperty('O') && tmpObject.O.split('~').length > 1) {
    console.log('return multiple files');
} else {
    console.log('return one file');
}
Sign up to request clarification or add additional context in comments.

Comments

1

Try this

var url = "http://bricks.couponmicrosite.net/JavaBricksWeb/LandingPage.aspx?O=107905&C=MF&CPT=qwbc74g7HdLtKVVQ1oNe&P=test&tqnm=td3ffdn764156741";
var search = url.substring(url.indexOf("?")+1);

var map={};
search.forEach(function(val){var items=val.split("="); map[items[0]]=items[1];});

if (map["O"].indexOf("~") != -1)
{
  //O value has ~ in it
}
else
{
  //O has no ~ in it 
}

Comments

0

Possible solution to get the paramter would be there : How to get the value from the GET parameters?

Once you have the parameter value, you can for sure look if you find '~' with String.prototype.indexOf.

String.prototype.indexOf returns the position of the string in the other string. If not found, it will return -1.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.