Java 脚本未定义的变量,基本的 html 表单
Java script undefined variable, basic html form
我已经为此苦苦挣扎了大约一个小时,并重写了大约三次,我一生都无法弄清楚问题是什么,无论输入什么,除了名称字段之外的所有内容都将返回一个值,但是name
将返回未定义。我已经看了很多次了,我已经复制+粘贴+修改了工作内容,我找不到一个错字......这是怎么回事?
Item Name: <input type="text" id="item_name" placeholder="Enter a price..."/> </br>
Item Price: <input type="text" id="item_price" placeholder="Enter a price..."/> </br>
Item Description: <input type="text" id="item_description" placeholder="Enter a description..."/> </br>
Item Image(link): <input type="text" id="item_image" placeholder="Enter a image link..."/> </br>
rsid: <input type="text" id="rs_item_id" placeholder="Enter a item id..."/> </br>
rsam: <input type="text" id="rs_item_amount" placeholder="Enter a item amount..."/> </br>
<button id="update">Update item</button>
<script>
var name = document.getElementById("item_name");
var price = document.getElementById("item_price");
var desc = document.getElementById("item_description");
var img = document.getElementById("item_image");
var rsid = document.getElementById("rs_item_id");
var rsam = document.getElementById("rs_item_amount");
var button = document.getElementById("update");
button.addEventListener("click", function() {
alert("Name = " + name.value + "'n"
+ "Price = " + price.value + "'n"
+ "Desc = " + desc.value + "'n"
+ "Img = " + img.value + "'n"
+ "rsid = " + rsid.value + "'n"
+ "rsam = " + rsam.value + "'n");
});
</script>
问题是,因为你把它们都变成了全局变量,所以name
一个与window.name
属性冲突。
使用不同的变量名称或创建闭包都可以
> 把name, price, desc, img, rsid, rsam
放在事件处理程序中。
var button = document.getElementById("update");
button.addEventListener("click", function() {
var name = document.getElementById("item_name");
var price = document.getElementById("item_price");
var desc = document.getElementById("item_description");
var img = document.getElementById("item_image");
var rsid = document.getElementById("rs_item_id");
var rsam = document.getElementById("rs_item_amount");
alert("Name = " + name.value + "'n"
+ "Price = " + price.value + "'n"
+ "Desc = " + desc.value + "'n"
+ "Img = " + img.value + "'n"
+ "rsid = " + rsid.value + "'n"
+ "rsam = " + rsam.value + "'n");
});
演示:http://jsbin.com/fivos/1/edit?html,output
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 多级HTML表单
- 使用html表单中的参数调用JavaScript函数
- javascript弹出窗口没有正确加载html表单
- Javascript/RegEx未验证HTML表单
- JavaScript”;复制“;HTML表单
- 使用Web Html表单创建Javascript数组
- 用PHP发送html表单和文件附件
- 单击鼠标,用MySQL数据填充html表单输入字段
- 从HTML表单发布blob的表单输入类型是什么
- 我的html表单无法验证.请参阅代码片段中的html代码和java脚本
- JavaScript-HTML表单到JSON(空值)和格式
- HTML表单将数据POST到MySQL
- 获取html表单信息并使用ajax将其推送到PHP
- 使用PHP通过HTML表单选项选择器过滤MYSQL结果
- javascript,HTML表单:单击按钮插入NULL
- 如何在HTML表单中提交我的下拉选择
- 将HTML表单发布到iframe会导致浏览器历史记录出现问题