我在提交表单时遇到问题,解决方法如下。我正在创建一个图像网站,我想为每个图像创建评论,所以我有一个 anchor 链接,单击该链接时会显示评论表单,即将 html 加载到最初不在里面的网页中,所以页面内加载的表单未提交。
动态加载到网页的表单是否有可能无法提交?这还有什么其他问题吗?我什至尝试输入类似 <a href="#" id="test">Click me</a>
的内容在加载的内容中,我添加了
$("#test").click(function(){
alert("SOMETHING");
});
我的 JavaScript 也不会发出警报..我做错了什么?
编辑
好的,这是我加载表单的方式..
我的图像下方有一个 anchor 链接:
<a href="javascript:;" onclick="showComments('22');" class="answer_comment">Add image content</a>
这是位于文档就绪函数之外的 javascript:
function showComments(post){
var xHTML = "<div class=\"addComment\">";
xHTML += "<form action=\"<?=base_url()?>images/post_comment/" + post + "\" method=\"post\" id=\"comment_form\" name=\"comment_form\">";
xHTML += "<input type=\"hidden\" id=\"comment_post_id\" name=\"comment_post_id\" value=\"" +post + "\"/>";
xHTML += "<textarea name=\"comment_text\" class=\"comment\" rows=\"8\" cols=\"40\"></textarea>";
.....
像这样我填写我的评论表..需要更多代码?
最佳答案
动态加载的元素也必须在您的情况下进行装配以发出警报,您想要:
$("#test").live('click', function() {
alert("SOMETHING");
});
这将对任何具有 id="test"
的元素触发,无论它是否加载了 ajax。无论您想使用什么处理程序,都应该使用相同的样式。阅读.live()
documentation对于整个故事......基本上它位于根 DOM 级别监听点击并对它们进行操作,因此它不关心当您定义事件处理程序时存在或不存在什么,这正是您想要的动态加载的内容。
关于javascript - 表格不会提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2302264/