Rodrigo Juarez
Rodrigo Juarez

Reputation: 1795

Get guid values with js and razor

I have an Asp.Net mvc 3 project I'm using razor, and need to generate guids in javascript

I was trying this:

<script type="text/javascript">
$(document).ready(function () {
    function getNewGuid() {
        return '@Guid.NewGuid()';
    }

I'm using inside the click event for a button, but the second call to the function is returning the same value

What should I do for reevaluating the function with each call?

Upvotes: 2

Views: 6895

Answers (2)

Steve Morgan
Steve Morgan

Reputation: 13091

The

@Guid.NewGuid()

is evaluated server-side when the page is rendered, so you will always get the same value.

You need a Javascript Guid library from somewhere.

Try the accepted answer to this question.

While you could make an Ajax call to the server, it's pretty pointless if all you're after is a unique value that could be generated far more efficiently client-side.

Upvotes: 5

Chris Lucian
Chris Lucian

Reputation: 1013

Create a controller then use JSON to return a new Guid from the server. Then use $().ajax to get the value.

If you don't want to ask the server for one use the following answer Create GUID / UUID in JavaScript?

Upvotes: 1

Related Questions