ho questo a mio avviso:Chiamare un QTIP in JS per ogni elemento in questione foreach
<%--
The training module list
--%>
<div id="training-mod-list-<%: categoryName.Replace(' ', '-') %>" class="training-module-list">
<% foreach (var module in categoryGroup)
{ %>
<div class="training-module-row">
<div class="training-module-name-<%: module.TrainingModuleId %>">
<script type="text/javascript">
<%: Html.GetQTip(module.TrainingModuleId, "", "", QTipPosition.Right,true,""); %> //get error here it has some invalid arguments?
</script>
<%: module.TrainingModuleName %>
</div>
</div>
<% } %>
quando mi passa il mouse sopra ogni nome di modulo di formazione voglio un QTIP da mostrare.
Poi GetQtip:
public static MvcHtmlString GetQTip(this HtmlHelper htmlHelper, string propertyName, string message, string propertyNameOverride = "", QTipPosition position = QTipPosition.Right, bool includeEvents = true, string title = "")
{
string qtipPosition = String.Empty;
switch (position)
{
case QTipPosition.Right:
qtipPosition = "my: 'left center', at: 'right center'";
break;
case QTipPosition.Left:
qtipPosition = "my: 'right center', at: 'left center'";
break;
case QTipPosition.Top:
qtipPosition = "my: 'top middle', at: 'bottom middle'";
break;
case QTipPosition.Bottom:
qtipPosition = "my: 'bottom middle', at: 'top middle'";
break;
}
if (!String.IsNullOrWhiteSpace(propertyNameOverride))
propertyName = propertyNameOverride;
if (String.IsNullOrWhiteSpace(title))
title = htmlHelper.Resource(Resources.Global.Title.Information);
StringBuilder sb = new StringBuilder();
sb.Append(String.Concat("$('#", propertyName, "').removeData('qtip').qtip({content: {text:"));
sb.Append(String.Concat("'", message, "', title: { text: '", title, "', button: false }}, position: { ", qtipPosition, " }"));
if (includeEvents)
sb.Append(", show: { event: 'focus mouseenter', solo: true, ready: false }, hide: 'blur'");
sb.Append(", style: { classes: 'ui-tooltip-shadow ui-tooltip-yellow' } });");
return new MvcHtmlString(sb.ToString());
}
}
per ora il parametro messaggio può essere solo un qualsiasi stringa qualcuno può spiegare a me come la sua intenzione di lavorare per mostrare un qtip per ogni formazione modulo ID? il parametro di messaggio verrà successivamente contengono punti specifici per ogni modulo di formazione id confezionati in una stringa HTML
grazie
Nuove domande: intendevi lasciare un ":" per il tuo '<%'? Non dovrebbe essere '<%: Html.GetQTip'? Forse era un errore di battitura o forse non è necessario. Inoltre, perché stai usando la posizione 'sintassi: QTipPosition.Right'? Perché includere la "posizione:"? – Ian
Ho modificato di nuovo il mio OP :) Ora ho qualcosa di sbagliato con l'elenco dei parametri –
'module.TrainingModuleId' è un int o una stringa? Potrebbe essere più importante perché lo stai passando ad una funzione che si aspetta certi tipi. Inoltre, mi chiedo se 'QTipPosition.Right' è disponibile/valido in questo contesto. Non lo saprei Prova a sostituire la dichiarazione di funzione come a una stringa e poi a passare una stringa - solo per vedere se questo è il problema – Ian