2015-04-28 176 views
-2

我想將函數的返回添加到Jquery中的元素。爲此,我使用:將函數javascript添加到元素jquery

function coloredInput(TrigColor) { 

    if (TrigColor === "error") { 
     TrigColor = $(this).css("border-color", "red").css("color", "red"); 
     return TrigColor; 
    } else if (TrigColor === "pass") { 
     TrigColor = $(this).css("border-color", "green").css("color", "green"); 
     return TrigColor; 
    } else 
     return false; 
} 

我嘗試如下:

$("#test").on("click", function() { 

     var test = $("#test").val(); 
if(test == "") { 
    $("#myInput").coloredInput("error"); 
      } 
}); 

我怎樣才能使它發揮作用?

已編輯的問題,此線程的答案不起作用。

+4

https://learn.jquery.com/plugins/基本插件創建/ - 看看jQuery插件 - 這就是你需要的 –

+0

有幾個類似的問題,但我發現對於鏈接太糟糕了,因爲谷歌更好地回答「如何製作一個jQuery插件?」 –

+0

對我來說,這個問題就像使用shuffle算法對無序列表進行排序。在行動之前學習一些基礎知識。 – Leo

回答

1

如果你不想創建一個插件,你可以像

function coloredInput(TrigSelector, TrigColor) { 

    if (TrigColor === "error") { 
     $(TrigSelector).css("border-color", "red").css("color", "red"); 
    } else if (TrigColor === "pass") { 
     $(TrigSelector).css("border-color", "green").css("color", "green"); 
    } 
} 

創建功能,並使用它像

coloredInput('#myInput', 'error'); 
+0

爲什麼不創建一個插件?這很容易... –

+0

謝謝devnull,這是我正在尋找,而不是一個插件。 不幸的是,這是行不通的,有什麼想法?我早就想出了它...... –

+0

它在這個小提琴中起作用,所以問題必須在其他地方:http://jsfiddle.net/fzrpfeeo/ – devnull69

0

首先需要創建一個jQuery插件 這裏是一個鏈接How to Create a Basic Plugin

<script> 

    $.fn.coloredInput = function(TrigColor) { 

     if (TrigColor === "error") { 
      TrigColor = this.css("border-color", "red").css("color", "red"); 
      return TrigColor; 
     } else if (TrigColor === "pass") { 
      TrigColor = this.css("border-color", "green").css("color", "green"); 
      return TrigColor; 
     } else 
      return false; 
    } 

    $(document).ready(function() { 

     $("#myInput").coloredInput("error"); 

    }); 


</script> 
+0

順便說一句,它似乎不工作。 –

+0

@Anyone_ph你有任何的JavaScript錯誤。? –