Javascript 是否可以对JQUERY的对象使用If条件?

Javascript 是否可以对JQUERY的对象使用If条件?,javascript,jquery,Javascript,Jquery,这是我的jquery代码-> <script type="text/javascript"> $(document).ready(function(){ var countPos=0; var add_button=$('#add_position'); var wrapper=$('#position_fields'); window.console && console.log('Document

这是我的jquery代码->

   <script type="text/javascript">
    $(document).ready(function(){
    var countPos=0;
    var add_button=$('#add_position');
    var wrapper=$('#position_fields');
    window.console && console.log('Document ready called');
    $(add_button).click(function(event){
        // http://api.jquery.com/event.preventdefault/
        event.preventDefault();
        if ( countPos >=9 ) {
            alert("Maximum of nine position entries exceeded");
            return;
        }
        countPos++;
        window.console && console.log("Adding position "+countPos);
        $(wrapper).append(
            '<div id="position'+countPos+'"> \
        <p>Year: <input type="text" name="year'+countPos+'" value="" /> \
        <input type="button" value="-" \
            onclick="$(\'#position'+countPos+'\').remove();return false;"></p> \
        <textarea  name="desc'+countPos+'" rows="8" cols="80"></textarea>\
        </div>');
       });
      });




</script>

$(文档).ready(函数(){
var countPos=0;
变量添加按钮=$(“#添加位置”);
变量包装器=$(“#位置_字段”);
window.console&&console.log('documentready called');
$(添加按钮)。单击(函数(事件){
// http://api.jquery.com/event.preventdefault/
event.preventDefault();
如果(countPos>=9){
警报(“最多超过九个位置条目”);
返回;
}
countPos++;
window.console&&console.log(“添加位置”+countPos);
$(包装器).append(
' \
年份:\

\ \ '); }); });
在上面的代码中,我想在$(add_按钮)之前添加一个if语句。单击(函数(事件)[当用户单击add按钮时,此事件函数将工作]。现在,如果此条件出错,我想添加“else”。是否可以这样做

我已经用这种方式尝试了->

 //here I add a If statement with this object
 if($(add_button).click(function(event))){
    // http://api.jquery.com/event.preventdefault/
    event.preventDefault();
    if ( countPos >=9 ) {
        alert("Maximum of nine position entries exceeded");
        return;
    }
    countPos++;
    window.console && console.log("Adding position "+countPos);
    $(wrapper).append(
        '<div id="position'+countPos+'"> \
    <p>Year: <input type="text" name="year'+countPos+'" value="" /> \
    <input type="button" value="-" \
        onclick="$(\'#position'+countPos+'\').remove();return false;"></p> \
    <textarea  name="desc'+countPos+'" rows="8" cols="80"></textarea>\
    </div>');
   });
   else{
          '<div id="position'+countPos+'"> \
    <p>Year: <input type="text" name="year'+countPos+'" value="" /> \
    <input type="button" value="-" \
        onclick="$(\'#position'+countPos+'\').remove();return false;"></p> \
    <textarea  name="desc'+countPos+'" rows="8" cols="80"></textarea>\
    </div>'

        }
//这里我添加了一个带有此对象的If语句
如果($(添加按钮)。单击(函数(事件))){
// http://api.jquery.com/event.preventdefault/
event.preventDefault();
如果(countPos>=9){
警报(“最多超过九个位置条目”);
返回;
}
countPos++;
window.console&&console.log(“添加位置”+countPos);
$(包装器).append(
' \
年份:\

\ \ '); }); 否则{ ' \ 年份:\

\ \ ' }

但是这个代码不起作用。我怎样才能到达目的地?

您能通过将
。click()
处理程序放在
if
中来解释您要做什么吗?在事件驱动的应用程序中,“如果用户单击其他按钮,则执行其他操作”没有多大意义。你提到“如果这个条件出了问题”-条件是什么?您想检查是否有添加按钮吗?不,先生,我不想检查是否有添加按钮。我想检查用户是否单击add按钮,然后该函数将生成两个动态输入字段。如果用户没有单击“添加”按钮,那么我还希望显示与我在.click()下声明的相同的动态输入字段。@freedomn mSo,为什么需要else块?。你可以问这个问题。我想在else块中添加一些额外的功能,问题是“如果用户不点击”的代码应该在什么时候运行。他们不能立即点击,所以他们可能会在一分钟后、10分钟后点击按钮。您希望在什么时候转到“他们没有单击,所以我将显示输入”?看起来像:当用户单击“添加另一个输入”时,在加载时显示一些输入。只需删除
if(…)
包装器(保留事件)、
else{
(以及相应的
}
s,就可以得到您想要的。