J'ai une page qui accepte les paramètres de l'utilisateur. J'ai lu ce paramètre dans mon action en utilisant params.playerId. puis faites les calculs avec.Lecture des paramètres enterd sur l'écran
J'ai modifié mon interface utilisateur maintenant et j'utilise extJS à des fins d'affichage. Par conséquent, j'ai une modification et une action editData. editData action a le code pour exécuter sql et exécuter le fichier js approprié et affiche edit.jsp. Cependant, dans l'action editData, lorsque j'utilise params.playerId, j'obtiens une valeur nulle.
Que peut être un cycle de travail pour ce scénario?
Mon code avant l'intégration avec extJS: l'action list est appelée et list.gsp est affichée avec les données.
liste def = {
def session = sessionFactory.getCurrentSession() résultat def = session.createSQLQuery ("select player_id de w.music où player_id = (params.playerId)") liste().
def tuneInstanceList = new ArrayList()
def air = new Tune()
result.each
{ tune.playerId = il
tune.playerPrice = "100" tuneInstanceList.add (air)
} [recoveryInstanceList: recoveryInstanceList]
}
Maintenant, quand je ntegrate avec extJS, j'obtiens la valeur de params.playerId comme nulle. Le code est ci-dessous.
list.gsp:
<% page @ import =% "de tune.Music">
<script type="text/javascript">
var ds = new Ext.data.Store({
autoLoad: true,
proxy: new Ext.data.HttpProxy({
url: 'http://localhost:8080/tune/music/listData'}),
reader: new Ext.data.JsonReader({
results: 'total',
root:'items',
id:'id'
},
[
{name: 'playerId'},
{name: 'playerPrice'}
]
)
});
var cm = new Ext.grid.ColumnModel([
{header: "Player Id", width: 70, sortable:true, dataIndex: 'playerId'},
{header: "Player Price", width: 90, dataIndex: 'playerPrice'}
]);
//cm.defaultSortable = true;
// create the grid
var grid = new Ext.grid.GridPanel({
ds: ds,
cm: cm,
renderTo:'grid-example',
width:1300,
height:300
});
</script>
<div class="body">
<!--<g:javascript library="examples"/>-->
<!-- EXAMPLES -->
<h1>Ext Grid</h1>
<div id="grid-example"></div>
</div>
Mon action du contrôleur:
def list={ }
def listData = {
def session = sessionFactory.getCurrentSession()
def result = session.createSQLQuery("select player_id from w.music where player_id= (params.playerId)").list();
def tuneInstanceList = new ArrayList()
result.each {
def tune = new Tune()
tune.playerId = it tune.playerPrice = "100"
tuneInstanceList.add(tune)
}
def listResult = [total: tunInstanceList.size(), items: tunInstanceList]
render listResult as JSON;
}
Comment puis-je récupérer les paramètres qui ont été saisis par l'utilisateur ??
Merci!
Accepter ma réponse car aucune autre solution trouvée. – MAlex