2014-12-02 42 views
0
forprice.innerHTML=document.forms[0].elements[2].value; 

我明白,forprice变量是改变(基本上左边的方程),但我不明白的是形式[0]部分 和元素[2]。价值的一部分 - 我对元素的理解。值部分是它取第二个位置的元素的值或可能的第二个元素的值。下列是为整个页面有人可以向我逐一解释这行代码:forprice.innerHTML = document.forms [0] .elements [2] .value;

代码-Thanks

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Untitled Document</title> 
<script> 
var imgs=new Array(); 

imgs[0]=new Image(400,400); 
imgs[1]=new Image(400,400); 
imgs[2]=new Image(400,400); 
imgs[3]=new Image(400,400); 
imgs[4]=new Image(400,400); 

imgs[0].src="m&p45blackwithcase.jpg"; 
//the above image does not load for some reason... i have tried changing the array order to included this first, 
imgs[1].src="m&p45optimized.jpg"; 
imgs[2].src="m&p45blackoptimized.jpg"; 
//eliminated image due to corruption 
imgs[3].src="taurus24-7package.jpg"; 
imgs[4].src="taurus689.jpg"; 





var imgs2=new Array(); 
imgs2[0]=new Image(400,400); 
imgs2[1]=new Image(400,400); 
imgs2[2]=new Image(400,400); 


imgs2[0].src="ammochart.jpg"; 
imgs2[1].src="HANDGUN_AMMUNITION_CHART.jpg"; 
imgs2[2].src="rifle-ammo-chart-optimized.jpg"; 
</script> 

<script> 
var i=0; 

function forward(){ 
// alert ("function"); 
i++; 

if(i==5){ 
    i=0;} 

    document.main.src=imgs[i].src; 
} 

function backward(){ 
    i--; 


if(i==-1){ 
    i=4;} 

    document.main.src=imgs[i].src; 

} 


function update(form){ 

var imgvalue=document.getElementById("imgslider"); 

whichimg=imgvalue.value; 

document.main.src=imgs[whichimg].src;} 





function selectthis (form){ 

var cntr; 

// alert ("function"); 


cntr=form.ammodd.selectedIndex-1; 

document.main2.src=imgs2[cntr].src; 


/* 
//forprice=document.getElementById("desc"); 
//forprice.innerHTML=document.forms[0].elements[2].value; 

removed because it's not needed 


var imgvalue2=document.getElementById("secondary"); 

whichimg=imgvalue2.value; 

document.secondary.src=imgs2[whichimg].src; 
*/ 


} 




var forprice; 
var cntr; 

function selectthis (form){ 
cntr=form.gundd.selectedIndex-1; 

document.main.src=imgs[cntr].src; 

forprice=document.getElementById("price"); 
forprice.innerHTML=document.forms[0].elements[2].value; 
} 


</script> 


</head> 

<body> 
<div align="center"> 
<table width="600" border="0"> 
    <caption> 
    <h1>Firearms Deluxe Emporium Superstore Outlet Market Discount Megacenter</h1> 
    </caption> 
    <tbody> 
    <tr> 
     <td><div align="center"><a href="home.html">Home</a></div></td> 
     <td><div align="center"><a href="products(image1works).html">Products</a></div></td> 
     <td><div align="center"><a href="checkout(toplayfunctionworks).html">Checkout</a></div></td> 
    </tr> 
    </tbody> 
</table> 
<h1>&nbsp;</h1> 
<p><img src="m&p45blackwithcase.jpg" name="main" width="640" height="480" id="main"/></p> 

<form id="form1" name="form1" method="post" action =""> 

<p>Just </p> 

<select name ="gundd" onchange="selectthis(this.form)"> 
<option value ="#" selected="selected"> Choose one </option> 
<option value ="400.00">Psychedelic View 1</option> 
<option value ="450.00">Psychedelic View 2</option> 
<option value ="500.00">Psychedelic View 3</option> 
<option value ="871.00">Psychedelic View 4</option> 
</select> 


<table width="400" border="4"> 

<tr> 
<td align="right"> <input type="button" name="backup" id="backup" value="back" onclick="backward()"/></td> 
<td align ="left"> <input type="button" name="forwardon" id="forwardon" value="forward" onClick="forward()"/></td> 
</tr> 

<tr> 
<td colspan="2" align="center"> <input type="range" id="imgslider" name="imgslider" min="0" max="4" value="0" step="1" onchange="update(this.form)"></td> 
</tr> 
</table> 
</form> 


<form id="form2" name="form2" method="post" action =""> 

<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p><img src="bullitsassorted-optimized.jpg" id="main2" name ="main2" width="620" height="465" alt=""/></p> 

<p> We have all types of rounds available. </p> 
<p>Whatever your needs are, we can fill them. </p> 


<p> 

    <select name="ammodd" onchange="selectthis(this.form)"> 
    <option selected="#">We even have amunition</option> 
    <option>Rifle Rounds</option> 
    <option>Handgun Rounds</option> 
    <option>Uses</option> 

    </select> 
</form> 
</div> 
</body> 

</html> 
+0

'forms [0]'指页面上的第一个表单,'elements [2]'指向该表单中的第三个元素。这些索引是从零开始的。 – j08691 2014-12-02 21:55:02

+0

所以在这种情况下,我的第三个“元素”会是什么?(您的回答是我想的下一件事,但我不知道他们正在计算哪些元素 – Anonymous 2014-12-02 22:19:42

+0

元素[]集合是指窗体中的窗体控件。在你的情况下,元素[2]引用onClick =“forward()”/>''input type =“button”name =“forwardon”id =“forwardon”value =“forward” 0] .elements [2] .value;'将是'forward'。 – j08691 2014-12-02 22:24:47

回答

0
的JavaScript

有效地寻找FIRST(0)`”对象,则表格内分配给第三要素的值。

第二个元素是select命名的gundd。该值将是选择哪个选项。 #如果没有选择。

0

从右侧开始。

document.forms[0] 

document.form为您提供了DOM中所有表单的数组。您可以将DOM简单地看作是html页面上所有元素的集合。形式[0]意味着你将获得数组中的第一个元素。这成为名称=“form1”的表单。所以..

document.forms[0] 
//points to 
<form name="form1">...</form> 

接下来是

document.forms[0].elements[2] 

在类似的方面,这需要我们处理的形式,并给出了表格中的所有元素的数组。这些不要与儿童混淆。它只给出表单元素,如输入,选择。即使他们在表单中,也不是p或h1。 [2]意味着我们得到数组中的第三个元素。它看起来像是name =“forwardon”的输入。请注意,选项元素不会计数,因为它们都被视为选择的一部分。

最后

document.forms[0].elements[2].value; 

的.value的只是意味着我们只是指出了元素的值。这将是“前进”。

把它放在一起。

forprice.innerHTML=document.forms[0].elements[2].value; 

我们正在改变分配给变量“forprice”的dom元素,以便它的html内容将等于“forward”。这就是.innerHTML所做的 - 改变html元素标签之间的内容。它似乎forprice被设置为id =“desc”,我无法找到,但它会假设看起来像这样的JavaScript后的元素。

<p id="desc">forward</p> 
+0

好的。我正在尝试根据滑块的值来更改文本。我尝试使用元素18无济于事......我在正确的轨道上? – Anonymous 2014-12-02 23:02:51

+0

一个更简单的方法来定位滑块将只使用document.getElementById('imgslider').value; – user2529750 2014-12-03 14:04:37

+0

我有一个不同版本的页面,但我想,我还是得到了一个未定义的时候我列出的代码是: 功能更新(形式){ \t VAR imgvalue =的document.getElementById(“imgslider”); whichimg = imgvalue.value; document.main.src = imgs [whichimg] .src; forprice = document.getElementById(“price”); //forprice=document.getElementById("price“); forprice.innerHTML =价格[whichimg] .src; } – Anonymous 2014-12-03 15:03:10

相关问题