使用getElementByClassName,并通过表单携带变量

时间:2013-07-02 15:19:57

标签: php javascript forms function getelementsbyclassname

所以我试图在html表单中跨页面传递javascript函数值。我用来显示值,以及一个隐藏的输入字段来存储它。这是我的代码:

  <div class="totalPrice"></div>
  <input type="hidden" name="totalPrice" class="totalPrice">

它是更大表单的一部分,通过按钮提交。在下一页:

 session_start();
 $_SESSION['totalPrice'] = $_POST['totalPrice'];

在我的javascript页面上,它正确地进行了计算,这里是javascript函数:

function getTotal()
{
var weekTotalPrice = weekPrice(); 
document.getElementByClassName('totalPrice').innerHTML = weekTotalPrice;
}

以下是问题:

  1. 类函数getElementByClassName不起作用,因为我无法看到我的总价。当我使用id而没有隐藏的输入字段时,它可以很好地工作。
  2. 我在javascript中的旧代码如下:

    document.getElementByClassName('totalPrice')。innerHTML =“总价:$”+ weekTotalPrice;

  3. 然而,它仍然显示“总价:$”部分,虽然显然我已经把它取消了。我仔细检查了我是否保存了文件,然后重置了我的本地MAMP服务器。

    我很想听听这两个问题的任何解决方案,非常有帮助。感谢。

2 个答案:

答案 0 :(得分:4)

您的getElementByClassName错误,应为getElementsByClassName。此外,getElementsByClassName返回一组项目,而不是单个项目。您需要指定要使用的项目。与此相反,您可以使用getElementById并在要更改的元素上指定ID以使其更易于处理。按ID引用DOM对象比类快。

答案 1 :(得分:-1)

尝试document.getElementsByClassName('totalPrice')。innerHTML =“”+周总价;并告诉我它是否正确打印出来。