2

我是一名学生,无法理解为什么这不起作用。

function addedToCart(x)
            {
            alert( x.value + " has been added to cart\nPress OK to continue.");
            }


<a href="#" value="blue circle" onclick="addedToCart(this)">

任何帮助表示赞赏!

4

3 回答 3

5

因为value不是锚的有效<a>属性。它旨在用于表单元素,例如inputselect

更合适(并且具有有效标记)的解决方案是使用 HTML5data-*属性,然后getAttribute按照@Jeffrey Sweeney 的建议使用它来获取它:

<a href="#" data-value="blue circle" onclick="addedToCart(this)">

进而:

alert( x.getAttribute("data-value"))
于 2012-09-22T02:11:22.887 回答
0

尝试使用该getAttribute功能:

alert( x.getAttribute("value") + " has been added to cart\nPress OK to continue.");

https://developer.mozilla.org/en-US/docs/DOM/element.getAttribute

于 2012-09-22T02:08:53.700 回答
0

2 件事value不是本地财产,<a而且您不会关闭</a>

我希望下面的代码将帮助您理解一种使其工作的类似方法:

<script>
    function addedToCart(x) {
        alert(x.value + " has been added to cart\nPress OK to continue.");
    }
</script>

<a href="#" onclick="addedToCart(document.getElementById('txt1'))">blue circle</a>
<input type="text" id="txt1" value="some value"/>

IE 也有自己的方式来解释 html,它的弊大于利,因为强制没有模式

于 2012-09-22T02:12:53.740 回答