与 jquery 组件通信
Communication with jquery component
我创建了一个 jquery 图形组件,但我不知道如何搜索 Google ...
我的想法是一个 javascript 函数来调用我的组件的一个函数。
下面是结构的简化创建:
(function ($, w) {
$.fn.TableFullOption = function (options) {
var settings = $.extend(true, {}, { FiltreGeneral: false, BtnReset: false, Datas: {}, Head: "", Body: "", Delete: "", Add: "", Modify: "", Details: "", AvecPager: false, Selectable: false, LstPageSize: '10;20;30;40', Default: [], LargeurColonne: [], HauteurTotale: 800, FiltreColonne: [], TriColonne: [], NomColonne: [], ObligColonne: [], ModifColonne: [], AddColonne: [] }, options);
if ((settings.Head == "") || (settings.Body == "")) { $(this).html('Erreur de paramétrage'); }
else {
...
}
};
function GetInfo(){return true;}
}(jQuery));
调用我的组件
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="/CSS/ui-lightness/jquery-ui.min.css" rel="stylesheet" />
<link href="/TableFullOptionPlugin/Table.css" rel="stylesheet" />
<script type="text/javascript" src="/script/jquery.js"></script>
<script type="text/javascript" src="/script/jquery-ui.min.js"></script>
<script type="text/javascript" src="/script/MsgResult.js"></script>
<script type="text/javascript" src="/TableFullOptionPlugin/eleve.js"> </script>
<script type="text/javascript" src="/TableFullOptionPlugin/TFOPlugin.js"></script>
<script type="text/javascript">
$(function () {
$('#divTable').TableFullOption({
BtnReset: true,
FiltreGeneral: true,
Head: '/TableFullOptionPlugin/TFOPlugin.aspx/GetStructTable',
Body: '/TableFullOptionPlugin/TFOPlugin.aspx/GetlstEleve',
Delete: '/TableFullOptionPlugin/TFOPlugin.aspx/DeleteEleve',
Add: '/TableFullOptionPlugin/TFOPlugin.aspx/AddEleve',
Modify: '/TableFullOptionPlugin/TFOPlugin.aspx/ModEleve',
Details: '/TableFullOptionPlugin/Details.aspx',
Selectable: true,
AvecPager: true,
LstPageSize: '10;20;30;40',
LargeurColonne: [60, 100, 80, 80, 80, 90, 70, 110, 110, 75, 75],
FiltreColonne: [true, true, true, true, true, false, false, false, true, true, true],
TriColonne: [true, true, true, true, false, false, false, false, true, true, true],
ObligColonne: [false, true, true, false, false, false, false, false, true, false, false],
ModifColonne: [false, true, true, true, false, true, false, false, true, false, false],
AddColonne: [false, true, true, true, true, false, false, false, true, false, false],
Default: [null, null, null, null, null, null, null, null, null, false, ValdefManu],
NomColonne: ["Logo", "Eleve", "Majeur", "Sexe", "Anglais", "Japonais", "Calcul", "Géométrie", "Dte Naissance", "Auto", "Manuel"],
HauteurTotale: 700
});
});
</script>
</head>
<body>
<div id="divTable"></div>
</body>
</html>
我尝试了 $('#divTable').TableFullOption().GetInfo();
,但没有 运行。
我不知道如何创建一个函数或调用我的函数 GetInfo
并得到我的回应。
借助其他论坛的帮助
我的示例插件 (Plugin.js) 是
(function ($, w) {
$.fn.BK = function (options) {
if (typeof options === "string") {
return $(this).data("BK")[options].apply(this, [].splice.call(arguments, 1));
}
var settings = $.extend(true, {}, {
BkG: 'yellow',
GetInfo: function () { return $(this).data("BK").BkG }
}, options);
$(this).data("BK", settings).css("background", settings.BkG);
return this
};
}(jQuery));
然后调用:eleve.js
$(function () {
$('#btnGetSel').button().click(function () {
alert($('#div1').BK("GetInfo"))
alert($("#div2").data("BK").BkG)
return false;
});
});
还有我的 html 页面:
<head runat="server">
<script type="text/javascript" src="/script/jquery.js"></script>
<script type="text/javascript" src="/PluginJquery/eleve.js"></script>
<script type="text/javascript" src="/PluginJquery/Plugin.js"></script>
<script type="text/javascript">
$(function () {
$('#div').BK({
BkG: 'red'
});
$('#div1').BK({
BkG: 'blue'
});
$('#div2').BK();
});
</script>
</head>
<body>
<div id="div">blabla</div>
<div id="div1">blabla</div>
<div id="div2">blabla</div>
<div style="margin-top: 50px;">
<button id="btnGetSel">Valider</button>
</div>
</body>
我创建了一个 jquery 图形组件,但我不知道如何搜索 Google ...
我的想法是一个 javascript 函数来调用我的组件的一个函数。
下面是结构的简化创建:
(function ($, w) {
$.fn.TableFullOption = function (options) {
var settings = $.extend(true, {}, { FiltreGeneral: false, BtnReset: false, Datas: {}, Head: "", Body: "", Delete: "", Add: "", Modify: "", Details: "", AvecPager: false, Selectable: false, LstPageSize: '10;20;30;40', Default: [], LargeurColonne: [], HauteurTotale: 800, FiltreColonne: [], TriColonne: [], NomColonne: [], ObligColonne: [], ModifColonne: [], AddColonne: [] }, options);
if ((settings.Head == "") || (settings.Body == "")) { $(this).html('Erreur de paramétrage'); }
else {
...
}
};
function GetInfo(){return true;}
}(jQuery));
调用我的组件
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="/CSS/ui-lightness/jquery-ui.min.css" rel="stylesheet" />
<link href="/TableFullOptionPlugin/Table.css" rel="stylesheet" />
<script type="text/javascript" src="/script/jquery.js"></script>
<script type="text/javascript" src="/script/jquery-ui.min.js"></script>
<script type="text/javascript" src="/script/MsgResult.js"></script>
<script type="text/javascript" src="/TableFullOptionPlugin/eleve.js"> </script>
<script type="text/javascript" src="/TableFullOptionPlugin/TFOPlugin.js"></script>
<script type="text/javascript">
$(function () {
$('#divTable').TableFullOption({
BtnReset: true,
FiltreGeneral: true,
Head: '/TableFullOptionPlugin/TFOPlugin.aspx/GetStructTable',
Body: '/TableFullOptionPlugin/TFOPlugin.aspx/GetlstEleve',
Delete: '/TableFullOptionPlugin/TFOPlugin.aspx/DeleteEleve',
Add: '/TableFullOptionPlugin/TFOPlugin.aspx/AddEleve',
Modify: '/TableFullOptionPlugin/TFOPlugin.aspx/ModEleve',
Details: '/TableFullOptionPlugin/Details.aspx',
Selectable: true,
AvecPager: true,
LstPageSize: '10;20;30;40',
LargeurColonne: [60, 100, 80, 80, 80, 90, 70, 110, 110, 75, 75],
FiltreColonne: [true, true, true, true, true, false, false, false, true, true, true],
TriColonne: [true, true, true, true, false, false, false, false, true, true, true],
ObligColonne: [false, true, true, false, false, false, false, false, true, false, false],
ModifColonne: [false, true, true, true, false, true, false, false, true, false, false],
AddColonne: [false, true, true, true, true, false, false, false, true, false, false],
Default: [null, null, null, null, null, null, null, null, null, false, ValdefManu],
NomColonne: ["Logo", "Eleve", "Majeur", "Sexe", "Anglais", "Japonais", "Calcul", "Géométrie", "Dte Naissance", "Auto", "Manuel"],
HauteurTotale: 700
});
});
</script>
</head>
<body>
<div id="divTable"></div>
</body>
</html>
我尝试了 $('#divTable').TableFullOption().GetInfo();
,但没有 运行。
我不知道如何创建一个函数或调用我的函数 GetInfo
并得到我的回应。
借助其他论坛的帮助 我的示例插件 (Plugin.js) 是
(function ($, w) {
$.fn.BK = function (options) {
if (typeof options === "string") {
return $(this).data("BK")[options].apply(this, [].splice.call(arguments, 1));
}
var settings = $.extend(true, {}, {
BkG: 'yellow',
GetInfo: function () { return $(this).data("BK").BkG }
}, options);
$(this).data("BK", settings).css("background", settings.BkG);
return this
};
}(jQuery));
然后调用:eleve.js
$(function () {
$('#btnGetSel').button().click(function () {
alert($('#div1').BK("GetInfo"))
alert($("#div2").data("BK").BkG)
return false;
});
});
还有我的 html 页面:
<head runat="server">
<script type="text/javascript" src="/script/jquery.js"></script>
<script type="text/javascript" src="/PluginJquery/eleve.js"></script>
<script type="text/javascript" src="/PluginJquery/Plugin.js"></script>
<script type="text/javascript">
$(function () {
$('#div').BK({
BkG: 'red'
});
$('#div1').BK({
BkG: 'blue'
});
$('#div2').BK();
});
</script>
</head>
<body>
<div id="div">blabla</div>
<div id="div1">blabla</div>
<div id="div2">blabla</div>
<div style="margin-top: 50px;">
<button id="btnGetSel">Valider</button>
</div>
</body>