2011-11-17 68 views
0

從XML中提取數據我想在將其作爲變量發送給模板之前對其進行預處理。一個stackoverflow的同事指出我Ext.Xtemplate,這是接近完成這項工作。Sencha touch Xtemplate中的Javascript問題

在我的每個記錄中,我都有一個這種模式的座標值:2.342556,48.873802,0.000000 3個項目用逗號分隔。我需要第一個和第二個。

所以我決定拆分,但它不起作用。

我嘗試到目前爲止(試圖只顯示一個用於測試值)

代碼:

var tpl = new Ext.XTemplate(  
     '<div>{name}<br>{[ values.coordinates.split(',')[1] ]}</div>' 
      ); 

這種回聲罷了。 如果我顯示數組的[0]列,它將顯示整個字符串,未分段。這意味着它沒有解析逗號。

如果我用別的東西它的工作原理(例如一個整數)

代碼分裂:

var tpl = new Ext.XTemplate(  
'<div>{name}<br>{[ values.coordinates.split(6)[1] ]}</div>' 
     ); 

我試圖與點分裂(「」),但它拋出一個錯誤( 「意外的字符串」)

也許我應該使用模板成員函數,但文檔中的示例對我來說不是很清楚。

感謝您的幫助,

朱利葉斯·

回答

0

你需要逃脫單引號或使用雙引號,像這樣:

var tpl = new Ext.XTemplate(  
     '<div>{name}<br>{[ values.coordinates.split(\',\')[1] ]}</div>' 
      ); 

否則您的通話將是這樣的:

var tpl = new Ext.XTemplate(  
     '<div>{name}<br>{[ values.coordinates.split(', ')[1] ]}</div>' 
      ); 

IE你通過2個參數而不是1

類似的問題將是本:

alert('o' 'hi there'); 

除了這一點,因爲沒有coincidential逗號在那裏將拋出一個語法錯誤。

+0

我確實試圖逃避單引號沒有成功。如果我將它們轉義出來,那麼[0]列和[1]都不會顯示任何內容。 – Matthieu

+0

你有[jsfiddle](http://jsfiddle.net)或類似的嗎? – Esailija

+0

解決它,雙引號是訣竅,謝謝 – Matthieu