有条件的ajax调用

时间:2017-08-26 20:27:04

标签: jquery html ajax

这可能是非常基本的jquery语法,但我对它不是很熟悉。我想只在页面上存在具有特定id的html输入时才进行jquery ajax调用。我该怎么做?

3 个答案:

答案 0 :(得分:2)

  1. 确保在标记之后包含您的脚本以进行验证(例如,在结束</body - 标记之前)或等待文档就绪DOM事件。
  2. 检查DOM元素是否存在。
  3. &#13;
    &#13;
    $( document ).ready(function() {
        if ( $('#jepp').length ) { // 0 validates falsy and != 0 truthy
            $('#jepp').val('do your stuff eg ajax')
        }
    });
    
    // or a little bit more advanced
    $(function() { // document ready
        if ( document.getElementById('jepp') ) { // vanilla JavaScript but still straight forward
            $('#jepp').val( $('#jepp').val() + ' | a bit more advanced')
        }
    })
    &#13;
    <input id="jepp" value="" style="width:100%">
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    &#13;
    &#13;
    &#13;

答案 1 :(得分:2)

<input name="foo" id="data">
<script type="javascript">
    ...
        var elementSize = $('#data').size();
        if(size > 0){
             $.ajax({
                ...
             });
             // Page contains id
        }else {
            //Page doesn't contains id
        }
    ...
</script>

你可以这样做。

$('#element-id').size()$('#element-id').length

是id元素的大小。 Id值必须为1且唯一。你检查大小,并进行ajax调用

答案 2 :(得分:1)

您可以使用选择器上的长度来检查页面上是否存在具有id的元素。如果是,请执行您的请求

if($("#yourId").length>0){
     //Your request
     $.post( "ajax/test.html", function( data ) {

     });
}