2013-07-13 58 views
0

有人可以帮助我,我已经搜索并且没有找到我想要的是取决于在其他领域中所做的选择,例如,所选选项的值如&名称。从其他领域的“选择”中获取数据

更新: 谢谢我试图通过添加“id”如果它的工作,但链接名称“不”。按照以下步骤修改脚本,以便在我的网站上查看更多定义。可以在这里查看:jsfiddle.net/87d5C/2

你可以帮助名称价值作品吗?

HTML:

<select id="Product1"> 
    <option name="billingcycle=monthly" value="16.00">1 Month</option> 
    <option name="billingcycle=semiannually" value="18.00">6 Months</option> 
    <option name="billingcycle=annually" value="20.00">12 Months</option> 
</select> 
<ul> 
    <li id="price1">16.00</li> 
</ul> 
<ul> 
    <li id="price1"><a href="cart.php?a=add&pid=300&">Order</a></li> 
</ul> 

脚本:

var select = document.getElementById("Product1"), 
    li = document.getElementById("price1"), 
    link = li.querySelector("[href='cart.php?a=add&pid=300&']"), 
    option; 
select.addEventListener("change", function(e){ 
    option = select.options[select.selectedIndex]; 
    li.innerHTML = option.value; 
    link.setAttribute("href", "cart.php?a=add&pid=300&"+option.name); 
}); 

非常感谢您的帮助!

+0

请告诉我们您试图做什么 – FSou1

+0

我不确定要了解您想实现的目标。你能更简洁地解释一下吗?使用编辑按钮添加更多信息到您的文章。 – ForceMagic

回答

0

试试这个(你可能要一个ID添加到您的selectul元素,以确保你得到正确的):

var select = document.getElementById("Product1"), 
    price = document.getElementById("price1"), 
    link = document.getElementById("order1").firstChild, 
    option; 
select.addEventListener("change", function(e){ 
    option = select.options[select.selectedIndex]; 
    price.innerHTML = option.value; 
    link.setAttribute("href", "cart.php?a=add&pid=300&"+option.getAttribute("name")); 
}); 

让我知道这对你的作品。

+0

它刚刚在我身上发现,你可能想在第二个代码块中动态创建html。我的印象是它已经在文件的某处。 –

+0

谢谢我试图通过添加“id”如果它的工作,但链接名称不。 按照以下步骤修改脚本,以便在我的网站上获得更多定义。 可以在这里查看:http://jsfiddle.net/87d5C/2/ – user2578471

+0

将两个元素设置为相同的ID是不好的做法。所有ID在文档上应该是唯一的。我建议将第二个'li'改为'order1'而不是'price1'并相应地修改你的代码。你还会介意批准我的答案吗?请并且谢谢你:) –