将prototype的findElement转换为jQuery

时间:2011-08-25 23:41:04

标签: jquery prototypejs

有人可以向我解释一下类似Form.event.findElement的jQuery吗?

$('.ad-publish-button').bind('click', function(e) { // jquery

     // section of prototype I need to convert to jquery
     if ( e.findElement('.ad').down('form').down('#location').value != '' ) {
          e.findElement('.ad').down('form').request();
     }

});

1 个答案:

答案 0 :(得分:1)

试一试

$('.ad-publish-button').bind('click', function(e) { 
    var _form=$('form',$(e.target).closest('.ad')[0]).first();
    if ($('#location',_form).val() != '') {
        $.ajax(_form.prop('action'), {type:_form.prop('method'),data:_form.serialize()});
    }
});
  1. e.target是点击的元素
  2. $(e.target).closest('.ad')[0]是className'.ad'的最近祖先  来自#1的元素。此元素用作选择器“表单”的上下文  (因此它会在.ad元素中找到一个表单)
  3. $.ajax()将发送请求(使用表单属性操作+方法和序列化元素)