如何在数据库中存储输入文本字段中输入的值
How to store value entered in an input textfield in a database
我正在使用springsourcetoolsuite,grails项目,我遇到了将在文本字段中输入的值存储到用mysql创建并连接到grails的数据库中的表中的问题。现在我有一个名为property的域类,它有变量address,city,邮政编码、国家等也是mysql数据库中表属性的字段。当我要求用户使用这段代码填写时-(gsp视图)
<body>
<g:textField name="address" maxlength="40" value="${propertyInstance?.address}" />
</body>
它起作用,并且值存储在数据库中。然而,我需要在每次点击按钮时添加一个输入字段,所以我将这个输入字段放在一个名为add()的函数中。这是代码-
<head>
<script type="text/javascript">
function add() {
var newP = document.createElement("p");
var input1,
area = document.getElementsByTagName("form")[0];
input1 = document.createElement("input");
input1.type = "g:textField";
input1.placeholder = "street";
input1.value = "${propertyInstance?.address}";
newP.appendChild(input1);
area.appendChild(newP);
}
</script>
</head>
<body>
<g:form name='prop' method="post" action="save">
<input type="button" value="+Add" onclick= "add();" ><br>
<g:submitButton name="create" class="save" value="${message(code: 'default.button.create.label', default: 'Create')}" />
</g:form>
</body>
现在,当我这样做并运行它时,它会获取null值,并打印一个错误,说"地址不能为null"。现在我看不出哪里出了问题,但如果有人熟悉groovy/javscript的话。。请帮我找出问题所在。非常感谢。
我猜您最初并没有使用脚手架功能来生成视图。如果你没有,这是一个开始理解grails基础知识的好方法。具体来说,您需要将要传递给控制器的字段(如地址)放入表单标记中。类似:
<body>
<g:form name='prop' method="post" action="save">
<g:textField name="address" maxlength="40" value="${propertyInstance?.address}" />
<input type="button" value="+Add" onclick= "add();" ><br>
<g:submitButton name="create" class="save" value="${message(code: 'default.button.create.label', default: 'Create')}" />
</g:form>
</body>
另一件事是,您不能创建一个标记输入并将其类型设置为"g:textfield"。html输入字段的类型有限。在这种情况下,您想要使用的是真正的"文本"。在任何情况下,grails的标记都在javascript之前呈现(在服务器端),而javascript代码则在客户端呈现。因此,在第一次呈现页面时,它们将起作用。但是,要在页面中动态插入一些内容,您需要ajax,因为grails的标记已经呈现。值${propertyInstance?.address}
需要在服务器上进行处理,返回并在字段中建立。因此,您需要发出一个异步请求。不管怎样,JQuery就是你的人。此外,对于您正在做的工作,JQuery有助于操作HTMLDOM,这将使您的工作更加轻松。
- 尝试在PHP中回显输入文本时出现未定义的索引错误
- 使用模拟按键在输入框中自动输入文本
- 如何添加类,同时开始在文本字段中输入文本
- JQuery使用相同的功能自动完成各种输入文本
- 如何设置输入文本框jquery的值
- 输入文本框为空时的阻止按钮asp.网络表单
- 基于单选框更新页眉,选中并选择输入文本
- 将输入文本与某个选项的值相匹配并自动选择
- 如何在 JavaScript 中创建输入文本框
- 如何使用纯Javascript观看输入文本框
- 需要使用javascript获取输入文本,然后将其添加到句子中
- php&js-将电子邮件添加到输入文本中
- 动态启用/禁用来自控制器的输入文本
- .val()不返回输入文本
- 从确认框中预填充输入文本框
- 如何使用JavaScript解析输入文本中给定的数据
- 添加/删除/更改输入文本的部分值
- 根据输入文本按元素排序,AngularJS
- 如何将(a*b)两个输入文本值相乘,并在javascript中随文本变化动态显示
- 如何从Tr重复的输入文本中获取值