2014-03-31 65 views
0

首先,請原諒我,因爲我不是很瞭解JavaScript和想作什麼工作,不知道正確的術語和語法。我在名爲「ViArt」的CMS內工作。很多正在發生的事情都是由php處理的,我只能在ViArt中訪問以將JavaScript添加到列表框的onChange事件中。JavaScript語法 - 列表框onchange事件

這是我想要實現的:

該產品是太陽鏡。列表框1中的不同框架顏色由數字前綴指定。每種幀顏色有30種不同的鏡頭顏色選項,並且這些鏡頭顏色在列表框2中選擇。

使用我當前的代碼,對於每一幀,我必須在JavaScript中爲每一幀輸入數字指定給該幀的前綴。

這是我的電流,工作在onChange事件代碼:

================================= 
var FrameNo = '01';//ENTER FRAME NUMBER 
var ImagePath = 'images/GlassesBrand/Rx/GlassesTest/';//ENTER PATH TO IMAGES 
var ImageNamePrefix = 'GlassesTest-XL';//ENTER NAMING CONVENTION 


// This changes the IMAGE hyperlink to larger image to match user's selection 
document.getElementById('blackImg').href=ImagePath + 'Large/' + ImageNamePrefix + '-Frame' + FrameNo + '-Lens' + 
this.form.property{form_id}_{property_id}.options[this.form.property{form_id}_{property_id}.selectedIndex].text.substrin g(0,2) + '.jpg'; 

=========================== ====== 我想做出改變,就是我不希望有硬編碼「FrameNo。」我想動態調用onChange事件中,通過查找列表框1.

的selectedIndex ========================== ===

在OnChange事件列表框2,命名爲 「{} PROPERTY_ID,」 我試圖讓一個列表框1的selectedIndex,命名爲 「{} property_parent_id6385_6773」

{} form_id值6385

{PROPERTY_ID}是列表框2,在該示例中,該值爲6773

{property_par ent_id6385_6773}的值是6765,在這個例子中,這是指列表框1

{property_parent_id6385_6773}是由php腳本動態命名的。例如,在下一個表單中,它可能被稱爲{property_parent_id6400_6800}。所以我想在JavaScript程序動態參考property_parent_id #### _ ####,無論基於何種形式和列表框中我的工作。

當我硬編碼或測試半硬編碼,下面的方法工作:

this.form.property6385_6765.selectedIndex; 

this.form.property{form_id}_6765.selectedIndex; 

我不知道語法,所以我想聲明變量中的一些東西可能會幫助我獲得我需要的東西。

從我的筆記:

var FrameBox = [this.form.property_parent_id6385_6773.value]; //WHICH EQUALS "6765" 
var FrameNo = 'this.form.property' + {form_id} + '_' + FrameBox + '.selectedIndex'; 

的結果:

http://www.companyname.com/images/GlassesBrand/Rx/GlassesTest/Large/GlassesBrand-GlassesTest-XL-Framethis.form.property6385_6765.selectedIndex-Lens02.jpg

然而,我尋求的結果的一個例子是:

http://www.companyname.com/images/GlassesBrand/Rx/GlassesTest/Large/GlassesBrand-GlassesTest-XL-Frame1-Lens02.jpg

== ============================

總之,我知道我需要什麼,但我對語法不夠了解。

我知道這可能是更好的措辭,但這對我來說都是新的。在光明的一面,我現在受到啓發,想要參加JavaScript課程。

任何幫助將不勝感激。

+0

這看起來更像是一個關於ViArt如何工作的問題。你有沒有試過ViArt論壇。 – jing3142

+0

我還沒有。嘗試在那裏獲得登錄。我很確定我的主要問題是JavaScript語法之一。我只是不確定我是否解釋得很好。 –

+0

用於引用元素的一些語法(即{form_id})特定於ViArt,因此看不到您如何引用幀顏色元素。 – jing3142

回答

0

這是更多的計算猜測,但可能值得一試。

this.form.property_parent_id{form_id}_{property_id}.options[this.form.property_parent_id{form_id}_{property_id}.selectedIndex].text 
+0

謝謝。我會檢查出來的。 –