Frage

Ich möchte mit JQuery aus einem EditorTamplates einen Kalender erstellen.Aber ich habe Probleme damit, die ID des Eingabetextes von Html.TextBoxFor zu erhalten.Und da ich mehr als einen Kalender in einer Ansicht haben möchte, kann ich diesen Wert nicht direkt zuweisen und muss dem Kontext meiner Steuerung folgen.

Die Ansicht:

<%@ Control 
    Language="C#" 
    Inherits="MvcContrib.FluentHtml.ModelViewUserControl<DateTimeModel>"  %>

<%= Html.LabelFor(x=>x.Date) %>
<%= Html.TextBoxFor(x=>x.Date, new { @class="common-textbox-ui-calendar-tb"})%>

<script> 
    var CalendarTBId = '<%= this.IdFor(x=>x.Date) %>'; 
</script>

Und das Modell:

public class DateTimeModel 
{
    public DateTime Date { get; set; }
    public bool IsEnabled { get; set; }
}

Bisher habe ich es mit MvContrib versucht, aber wenn ich erwartet hätte, "Filter_StartDate_Date" zu erhalten, erhalte ich nur "Date".

Haben Sie gute Ideen, um das zu lösen?

Danke im Voraus,

[Bearbeiten]

Ich habe meiner Ansicht Folgendes hinzugefügt:

<% Guid ControlGuid = Guid.NewGuid(); %>
<%= this.TextBox(x=> x.Date.ToShortDateString()).Id(ControlGuid.ToString()) %>
<script> 
    var CalendarTBId = '<%= ControlGuid  %>'; 
</script>

Aber ich mag es nicht.Es sieht für mich wie ein Hack aus.Was denkst du?

[/ Bearbeiten]

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top