1

I have this method in my Controller that saves the value in a Tempdata, as shown below.

public Boolean SaveSession(string id) {
        TempData["CurrentTab"] = id;
        return true;
    }  

Now in my javascript, I want to get the value in that TempData. But when I alerted the value I got this value. "[object HTMLSpanElement]"

@{
         if (TempData["CurrentTab"] != null){           
            @:alert("" + @TempData["CurrentTab"].ToString())                
        }
    }

How can I get the string value of that Tempdata?

Thanks

1 Answer 1

2

The problem is that you're wrapping your TempData value incorrectly.

Assuming your id is my_span, the JavaScript output is:

alert("" + my_span)

When you probably want:

alert("my_span")

The reason you see [object HTMLSpanElement] is because the Browser tries to translate my_span into document.getElementById('my_span') (since it doesn't know of any other my_span) and you actually have such (span) element with that id.

Try:

@{
     if (TempData["CurrentTab"] != null){
        @:alert('@(TempData["CurrentTab"])');
    }
}
Sign up to request clarification or add additional context in comments.

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.