-1

私のビューでunderscore.jsを使用すると、変数serialNumberIdを私のビューに戻そうとしています。ここで私が試したことがあります:underscore.jsからMVCコントローラに値を渡すにはどうすればいいですか?

<a href="@Url.Action("process", "wip", new { id = <%= serialNumberId %> })"> 
    Text 
</a> 

...しかし、それはそれを好まなかったです。赤いくすぐり。

<a href="@Url.Action("process", "wip")/<%= serialNumberId %>"> 
    Text 
</a> 

を...しかし、その後のコードであっても、コントローラの私のprocessアクションメソッドに到達したことがない:

は、その後、私は試してみました。

すべてが私はこのようなserialNumberId値をハードコーディングした場合に正常に動作します:

<a href="@Url.Action("process", "wip", new { id = 10 })"> 
    Text 
</a> 

またはこのような

<a href="@Url.Action("process", "wip")/10"> 
    Text 
</a> 

だから私はそれが、代わりに私の serialNumberId変数で行うのですか?

編集:ここではserialNumberIdは(DataTableの機能のそれの一部)から来ているコードです:

... 
columns: [ 
    { 
     data: 'serialNumberId', searchable: false, orderable: false, 
     render: function (data, type, row, meta) { 
      var structure = _.template($('#tmpl-actions').html()), 
       html = structure({ serialNumberId: data }); 

      return html; 
     } 
    }, 

編集2:わかりましたので、いくつかは、より多くの周りにプレーした後、私はしないでくださいこれがアンダースコアの問題だと考えてください。これはデータテーブルの問題です。上記のserialNumberId: dataは何らかの理由でNullです。私がASP.Netをステップ実行すると、intでいっぱいになりますが、DataTablesを経由すると空になります。

+0

? –

+0

2回目の試行の実際の出力は何でしたか?結果のリクエストのURLは何ですか? – David

+0

serialNumberIdが来るコードを追加しました –

答えて

0

serialNumberIdがjquery変数の場合、それは剃刀構文では使用できません。 しかし、あなたはそれでURLを作成したい場合は、あなたが行うことができます。この `あなたのjavascriptのコードと一緒に、このコードは

<script>    
    $("a").click(function(){ 
     var url='@Url.Action("process","wip")'+serialNumberId; 
     window.location.href=url; 
    }); 
</script> 
+0

jquery変数ではなく、元のポストの一番下にちょうど含まれていたDataTablesコードから来ています –

関連する問題