2013-10-07 3 views
0

У меня есть приложение asp.net и мне нужно, чтобы объединить C# и код JavaScript:написание JavaScript скрипт внутри C# код

<td > 
    <label name="[email protected](i)">@Model[1][i]._tag</label> 
</td> 
<td> 
    <input type="text" value="@Model[1][i]._client" name="[email protected](i)"/> 
</td> 
<td> 
    <input type="text" value="@Model[1][i]._reception" class="datepicker" name="[email protected](i)"/> 
</td> 
<td> 
    <input type="text" value="@Model[1][i]._cloture" class="datepicker" name="[email protected](i)"/> 
</td> 
<td> 
    @{ 
     List<Planning.Models.Impaire> liste = u.Get_Impaire_List(); 
     Planning.Models.Impaire imp = liste.Find(x => x.id_paire == Model[1][i].Id); 

     @{ 
      string reception = @: <script> 
      @: var f1 = $('input[name="reception' + @i.ToString() + '"]').val(); 
      @: document.write(f1); 
      @: </script> 
      ; 
      string cloture = @: <script> 
      @: var f2 = $('input[name="cloture' + @i.ToString() + '"]').val(); 
      @: document.write(f2); 
      @: </script> 
      ; 
      string client = @: <script> 
      @: var f3= $('input[name="client' + @i.ToString() + '"]').val(); 
      @: document.write(f3); 
      @: </script> 
      ; 
      string tag = @: <script> 
      @:var f4= $('input[name="tag' + @i.ToString() + '"]').val(); 
      @: document.write(f4); 
      @: </script> 
      ; 
     } 

     @Html.ActionLink("enregistrer","Index", new {identificateur = Model[1][i].Id, Pages = "1", _reception =reception, _cloture = cloture, _client = client, _tag = tag }) 
    </td> 

Но у меня есть исключение в этой строке: @: var f1 = $('input[name="reception' + @i.ToString() + '"]').val();error

Что причины этой ошибки? Как я могу это исправить?

+0

У вас есть предложения? –

ответ

1

Наличие js внутри представления, подобного вашему образцу, очень неудачно и его всегда можно избежать. Найдите способ отделить javascript от кода бритвы настолько хорошо, насколько сможете. Вы можете оставить JavaScript переменные внутри вида, так

var arr = [@i.ToString()] 

, а затем, в отдельный JS файл вы обрабатываете это Js переменную обр.

+0

Я получил тот же результат при добавлении 'var arr = [@ i.ToString()]' –

+1

сообщение об ошибке на изображении не читается, так как оно 1. слишком маленькое, второе на французском, что я не слишком хорош в. Похоже, ваш код шаблона недействителен. Возможно, вырезать части до тех пор, пока они не найдут место, где он висит. – citykid

+0

'Ошибка компиляции Описание: Произошла ошибка во время компиляции ресурса, необходимого для удовлетворения этого требования. Ниже приведена подробная информация об ошибке, о которой идет речь, и соответствующим образом измените исходный код. Сообщение об ошибке компилятора: CS1002 :; Ожидаемый' –

Смежные вопросы