Jquery无法找到给定表单id的表单输入
Jquery unable to find form inputs to given form id
我正试图在我的网站上的回复表单的sumbit上运行一个函数。这些表单是在页面加载后由Javascript创建的,因此Jquery使用live函数来响应按钮的".replyformsubmit"类的单击。
我需要这个脚本来记录表单的输入值,但它似乎无法做到这一点
目前,已经找到了包含按钮的表单的ID,但使用它来尝试查找输入值似乎没有结果,这可能是一个小学生的错误,但我似乎猜不出来。
任何帮助都会很棒。
Jquery:
$(".replyformsubmit").live("click", function(){
var curform = $(this).closest('form').attr('id');//what form is the current one?
var comment = $('#' + curform + ' > input[name=comment]"').val(); //comes out as undefined
var replyingSerial = $('#' + curform + ' > input[name=replyingSerial]"').val(); //comes out as undefined
...
脚本似乎找不到注释和replyingSerial是什么。
标准示例表单的HTML是:
<form action="com.php" method="post" id="replyform_quickreply_1345291318.6107" class="replyform">
<textarea name="comment" type="text" id="commenttextquickreply_1345291318.6107">
</textarea>
<br>
<input type="submit" value="send!" class="replyformsubmit">
<input type="hidden" style="visibilty: hidden;" name="replyingSerial" value="1345291318.6107"></form>
有几件事。注释是一个文本区域,而不是输入,所以如果你想找到它,你需要使用textarea[name=Comment]。
其次,您可以使用parent()和find使代码更干净:
$(".replyformsubmit").on("click", function(){
var parent = $(this).parent();
var comment= parent.find("textarea[name=comment]");
alert(comment.val());
});
这是因为按钮是submit
,它阻止执行其余代码。请改用type='button'
。
或者使用:
$('#formname').submit(function() {
alert('Handler for .submit() called.');
return false;
});
将input type="submit"更改为input type="button",因为它不允许在提交后执行其他代码,而是使用.on()
从jQuery 1.7开始,.live()方法已被弃用。使用.on()附加事件处理程序。旧版本jQuery的用户应该优先使用.delete()而不是.live().
此方法提供了一种将委托的事件处理程序附加到页面的文档元素的方法,从而在将内容动态添加到页面时简化了事件处理程序的使用。有关详细信息,请参阅.on()方法中对直接事件与委托事件的讨论。
相关文章:
- Php,Javascript-动态表单id's和动态验证
- Jquery无法找到给定表单id的表单输入
- 具有更改表单ID的选择器
- 根据 HTML 表单 ID 值动态设置 jquery 选择器
- 使用 Jquery 从输入中获取表单 ID
- Javascript 找不到 HTML 表单 ID
- 如何从AJAX获取表单ID,并在Symfony2的点击函数中进行设置
- 更改使用 ajax 且不带表单 ID 的表单提交
- 将表单id传递给函数并在函数内提交
- 从OnSuccess或OnFailure获取表单Id
- 追加参数'表单id'使用URL
- 如何在发送表单之前使用jquery选择表单id
- 通过表单id访问单选按钮值
- 如何在javascript中验证相同的表单id
- 如何提交没有表单ID和提交ID,但已知隐藏值的表单
- 正在表中打印表单id
- Jquery获取表单id当一个复选框被点击
- 如何获得表单id与js
- 使用jQuery .submit()检索提交的表单ID和/或名称
- 动态删除后如何更改表单id