javascript - JS改变输入值

标签 javascript html web

我的问题是: 我有两个输入框,一个用于代码,一个用于价格:

<input class="style" name="code" id="code" type="text">
<input class="style" name="price" id= "price" type="text" value="&euro; 15,00" readonly="readonly">

现在我想通过代码更改价格(比如从代码数组 [code1][code2]. 结果到 code1 = price/2 和 code2 = price/4 的检查)我想通过脚本检查实时或发布前(提交时)。这可能是什么时候?或者还有其他更好的方法吗?

我有:

while(true) 
{
    var code = document.getElementById("code").value;

    var codes = new Array("promo1", "promo2");

    for (var i=0; i<codes.length; i++) {

        if (codes[i] == code) {
            document.getElementById("price").value = "5";
        }       
    }
}

我的输入字段显然在表单字段中 但值(value)没有改变,但为什么呢? 我不必实时更改如果帖子发送新值就可以了......任何解决方案/更好的想法/提示? 我知道 JQuery 是一种更好的方法,但它不应该是 js 的问题。

fiddle 链接:
jsfiddle.net/vicR/4Mtbr

最佳答案

这可以通过多种方式轻松获得,特别是如果使用库或框架,但使用纯 javascript 应该这样做:

while(true) {
 var code = document.getElementById("code").value
 //now check for valid code in some sort of map or array
 //REMEMBER javascript supports string indexed arrays such as arr["#45"]
 if(code == validatorFunctionOrCode) { //obviously pseudo
  document.getElementById("price").value = "your corresponding price to the code"
 }
}
  • 这一切都在您点击提交按钮之前进行了动态检查。

说到这里我强烈推荐 Angular.js因为它支持数据绑定(bind)(例如 - databinding)

关于javascript - JS改变输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18612794/

相关文章:

html - UIWebview - 文本切割

javascript - 如何跨 android 和 JS bridge 配置通用数据模型?

javascript - FormData() 对象不添加来自表单的提交类型输入,而在 Firefox 上

javascript - 从 Parse.com 中删除一个对象

javascript - Web 共享 API 在 iOS : Angular 上不起作用

html - 使用 css 将标题标题对齐到正文组件上方以进行 react 应用程序

javascript - 在自己的 JavaScript 对象中引用另一个对象

php - 数据库/PHP 设计 - 将其他实体实例的列表添加到另一个实体实例?

html - 悬停某个图像时显示某些信息

java - 可以让内网用户通过浏览器截取当前页面吗?