如何从多个textareas和单选按钮上单击使用敲除按钮获取输入? [英] How to obtain input from multiple textareas and radio buttons on the click of a button using knockout?

查看:108
本文介绍了如何从多个textareas和单选按钮上单击使用敲除按钮获取输入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有几个在 ko:foreach 绑定中动态生成的textareas和单选按钮。当用户决定他们完成输入时,他们将点击一个按钮'OK',该按钮将文本区的所有输入和他们选择的单选按钮的值全部输入,并且应该触发对服务器的ajax调用,因为输入需要存储在数据库中。每个textarea和radiobutton值都单独存储,因此需要将它们作为可区分的值发送到服务器。由于 foreach 绑定,我一直有很多麻烦,所以我不知道从哪里开始,因为textareas没有可访问的唯一标识符,因为它们是使用 foreach 生成。谢谢。



因此,简单来说:


  1. 多个用户类型textareas和点击单选按钮。

  2. 完成输入后,用户单击确定按钮。按钮点击功能可检索所有textareas和单选按钮值中的用户输入。
  3. 触发ajax调用并将值发送到服务器。

任何帮助表示赞赏或链接到我可以遵循的任何资源。我的谷歌搜索没有完全回答我的问题。



图片:

服务器:

  if(Request.HttpMethod ==POST)
{
//将json放到body中
var serializer = new JsonSerializer();
var sr = new StreamReader(Request.InputStream);
var jtr = new JsonTextReader(sr);
dynamic data = serializer.Deserialize(jtr);

if(data.action ==getProjects)
{
getProjects(data);


$ b

通过ajax发布的示例对象:

  Obj = {}; 
Obj.action =getProjects;
Obj.list = arrayOfCheckboxValues;

查看:

 <! -  ko foreach:projects  - > 
< div id =eachOppyProject>
< table>
< tbody>
< tr>
< td>< a data-bind =attr:{href:'/ tools / oppy /'+ guid}>< span class =linkdata-bind =value:guid ,text:name>< / span>< / a>< / td>
< / tr>
< tr data-bind =text:projectDescription>< / tr>
< / tbody>
< / table>
< div class =btn-groupdata-toggle =buttons>