【问题标题】:dojo dojo.behavior values not posteddojo dojo.behavior 值未发布
【发布时间】:2012-12-24 05:37:13
【问题描述】:

当我运行以下 sn-p 并单击“提交”时,“价格”不会发布;有什么我忘记了吗?

<?php
var_dump($_POST);
?> 
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="libs/dijit/themes/claro/claro.css"> 
<script>dojoConfig = {async: true}</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.8.3/dojo/dojo.js"></script> 
</head> 
<body class="claro">
<form id="myform" method="post" action="index.php"> 
  <input class="cif" name="price" type="text" value="125.10" />
  <input type="submit" value="submit" name="submit">
</form>
<script type="text/javascript">
require(["dojo/ready", "dijit/form/NumberTextBox", "dojo/behavior"],
   function(ready, box, behavior){
      ready(function(){     
         behavior.add({
           '.cif': function(node) { //assumes "found"
              new box({constraints: {pattern: "###,###.00"}, value: dojo.number.format(node.value, {places:2})},node);                          
         }
      });
      behavior.apply();
   });      
});
</script>
</body>
</html>

抱歉这个新手问题

埃里克

【问题讨论】:

  • 您有任何错误吗?头部的

标签: php dojo javascript-framework


【解决方案1】:

替换:

var_dump($_POST);

与:

var_dump($_POST['price']);

【讨论】:

  • var_dump($_POST['price']) 抛出未定义索引的错误,因此返回 null。
  • 尝试将 id="price" 添加到您的价格输入并使用我之前发布的代码。
【解决方案2】:

最近我遇到了类似的问题,我只找到了这个结果,但没有答案。但是今天我弄明白了,所以我会分享我的知识。

当您创建一个新的小部件框时,您还需要定义“名称”属性,否则小部件将生成隐藏输入,而发布时不需要“名称”属性。

改变这一行:

new box({constraints: {pattern: "###,###.00"}, value: dojo.number.format(node.value, {places:2}), name: "price"},node);

三角

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-07
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 2020-05-15
    相关资源
    最近更新 更多