2009-09-10 4 views
1

J'utilise jQuery dans mon application web. Il y a deux champs où je veux passer une valeur de tableau à partir du code derrière en utilisant jQuery.Comment passer la valeur du tableau du code derrière à jQuery?

J'utilise ce code pour un graphique:

var chart2={ 
    label:names['c2'], 
    type:$('select[@name=c2type]').val(), 
    color:$('select[@name=c2color]').val(), 
    values:getTableCol('c2'), 
    stackedOn:names[$('select[@name=c2stack]').val()]}; 

En values:getTableCol('c2') je besoin de passer la valeur de tableau à partir d'un code derrière la page. En ce moment, il prend sa valeur à partir d'une colonne de table, mais je n'ai pas besoin de la table. Ici, je veux passer une valeur du formulaire {12,45,45,50,55} lors de l'exécution. C'est changeable.

Comment puis-je transmettre cette valeur?

Répondre

0

Vous pouvez rendre la valeur dans un champ masqué sur la page à l'aide du contrôle HtmlInputHidden. Pourvu que vous donniez au champ un identifiant pouvant être référencé depuis jQuery, vous pourrez y accéder.

0
// selects both table header and table data cells from the third column of #mytable 
$('#mytable th:nth-col(3), #mytable td:nth-col(3)'); 

// same as above but using the nthCol extension function 
$('#mytable th, #mytable td).nthCol(3); 

copié de http://www.bramstein.com/projects/column/

1

Vous pouvez sérialisation JSON et mis en page - JSON est JavaScript juridique.

code-behind:

using System.Web.Script.Serialization; 

protected string JsonArray 
{ 
    get { 
    var myArray = new int[] { 1, 2, 3 }; 
    return new JavaScriptSerializer().Serialize(myArray); 
    } 
} 

.aspx:

var chart2 = { 
    values: <%= JsonArray %> 
}; 
1

J'utilise l'intérieur Page_PreRender suivant:

Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "DeclareMyArray", @"var myArray = ['hello', 'world'];", true); 

alors vous devriez être en mesure de faire ce qui suit :

var chart2={ 
    label:names['c2'], 
    type:$('select[@name=c2type]').val(), 
    color:$('select[@name=c2color]').val(), 
    values:myArray, 
    stackedOn:names[$('select[@name=c2stack]').val()]}; 
Questions connexes