获取父对象并通过其间的表单传递给其他方法

时间:2013-10-25 19:06:01

标签: javascript jquery-ui jquery

感谢您的赞成和赞赏。

http://jsfiddle.net/AUcu6/1黑色箭头。我在创建任务时被击中。它打开一个表单,表单提交按钮进行ajax调用。现在,我需要在ajax调用中使用表单值(这很容易通过#form id和field获取值),但是如何获取被点击的arow div的父节点并将其传递给ajax调用方法

我可能会得到$(this).parents(".someClass").first()的.someClass的div的第一个父级,但实际上如何实际操作并将值移到表单中或通过表单移动到ajaxcall方法。

表单实际位于点击的div和ajaxmethod调用之间

1 个答案:

答案 0 :(得分:0)

这里有一种方法可以做到这一点。

看看这段代码:

<form id="createForm">
   <input name="task-title"></input>
          ^^^^  

   <textarea name="task-description"></textarea>
             ^^^^ need the name for all inputs you care about

   <input id="parentVal" type="hidden" name="parentVal"/>
   <input type="button" value="Create" class="create..." onClick="ajaxCreateTask();" />
</form>

<script> 
   function ajaxCreateTask(){
      $("#parentValue").val("getValueYouWant"); //sets the hidden input which makes it part of the form
      $.post("url", $("#createForm").serialize());
   }
 </script>

现在让我们解释一下这是如何工作的。调用serialize方法时,它基本上将表单转换为地图。地图的keysname属性,值是输入的值。我们使用隐藏输入来包含额外数据 - 单击按钮的父数据或任何您想要的数据。然后,您只需调用post jquery方法,该方法对作为第一个参数的url发出post请求,并且请求包含第二个参数中的数据,即表单数据。 This页面非常有用。

如果您有任何疑问,请告诉我。