将动态元素值赋予jquery $('#element')

时间:2011-01-02 06:01:50

标签: jquery

我有一个项目列表,其中每个列表都有一个联系表单,它会动态显示并提交表单。提交时我想要的是,JavaScript将获得表单编号,我希望成功消息只显示在该特定表单中...

Form 1 - message_1
Form 3 - message_2
Form 3 - message_3

我的表单编号为frmno = 1,所以我可以这样做:

$("#message_" + frmno).html // this seems like not working, if not working what could be another way..

$("#message").html("<h3>Your Message was successfully submitted!</h3>")

1 个答案:

答案 0 :(得分:3)

  

...动态显示并提交表单

如果确实提交表单,那么您将需要处理此服务器端,因为提交表单将拆除当前页面并将其替换为您从表单提交中返回的内容

但是,如果您通过ajax提交,那么form元素实际上具有idname个值(而不是message_1 s)$("#message_" + frmno).html("your html here"); 等等,然后是你的第一行:

jQuery(function)

...应该正常工作,只要有问题的元素已经存在于DOM中(当然,如果用户填写了表单,他们也会这样做。)

示例 - 下面我从按钮的值中获取表单编号,但概念是相同的;请注意我正在使用<input type='button' value='Set 1'> <input type='button' value='Set 2'> <input type='button' value='Set 3'> <form id='message_1'>This is div 1</form> <form id='message_2'>This is div 2</form> <form id='message_3'>This is div 3</form> ,这是ready的快捷方式,在DOM完成之前等待执行某些操作:

HTML:

jQuery(function() {

  $(':button').click(function() {
    var index = this.value.replace('Set ', '');
    $('#message_' + index).html("Div " + index + " updated at " + new Date());
  });

});​

使用jQuery的JavaScript:

{{1}}

Live copy