如何让我的代码看起来像jquery风格的ajax

时间:2013-02-28 15:03:02

标签: javascript jquery ajax

我知道这个问题有点令人困惑,但这就是这个想法:

我正在使用JavaScript创建一个库并尝试复制一些jQuery的样式。我有一个函数,它将接收3个参数,我想像jQuery中的AJAX一样。

示例:

我希望我的功能看起来像这样

$.ajax({
url: "url",
dataType: post,
etc etc
});

但是我的代码:

Stone.ValidateNumber({
InputElementId: "Some Input's ID",
MessageDestiny:  "Other html element's ID"
TrueResults: "#333",    //if the validation is true
FalseRetuls: "RED",    //if the validation is false(I dont know if this could work or could be a function, but i dont know, and thats why i came here)

})

注意:这只是一个例子。我想要的是知道这样做。

3 个答案:

答案 0 :(得分:3)

jQuery正在做的是拥有一个对象参数。

示例:

Stone.ValidateNumber = function( params ) {
   alert( "InputElementId = " params.InputElementId );
   alert( "TrueResults= " params.TrueResults );
   alert( "FalseRetuls= " params.FalseRetuls );


}

这是一种实现ajax风格的方法:

var $ = {}; //$ equal to new object
$.ajax = function(options) {
   alert( options.data );
}
$.get = function( options ) {
   this.ajax( { data : 'hello', url: 'http://www.google.com' } );
}

答案 1 :(得分:1)

这样的事情:

ValidateNumber(myDict) {
    input = myDict["InputElementId"];
    t_results = myDict["TrueResults"];
    f_results = myDict["FalseResults"];

    // Process data
}

答案 2 :(得分:0)

这样的东西?

Stone.ValidateNumber = function(first){

if (Object.keys(first).length) == 1)
{
    //make sure that all elements are defined (typeof != 'undefined')
 if (first.InputElementId == 'valid_rule')
     return first.TrueResults;
  else
     return first.FalseRetuls;
}