Javascript 如何调整Jira gadgets的大小;数据
我正在实现一个Jira小工具。我对检索数据有问题。 我正在将数据从DB检索到gadget。有很多列,因此小工具无法显示所有列。我想我必须调整数据的大小。还有一件事;如何停止检索数据以转到页面末尾? 这是我的gadget.xmlJavascript 如何调整Jira gadgets的大小;数据,javascript,jira,jira-plugin,Javascript,Jira,Jira Plugin,我正在实现一个Jira小工具。我对检索数据有问题。 我正在将数据从DB检索到gadget。有很多列,因此小工具无法显示所有列。我想我必须调整数据的大小。还有一件事;如何停止检索数据以转到页面末尾? 这是我的gadget.xml #requireResource("com.atlassian.gadgets.publisher:ajs-gadgets") #requireResource("sqlGadget:Web-resources") #req
#requireResource("com.atlassian.gadgets.publisher:ajs-gadgets")
#requireResource("sqlGadget:Web-resources")
#requireResource("com.atlassian.jira.gadgets:common")
#requireResource("com.atlassian.jira.gadgets:autocomplete")
#includeResources()
<script type="text/javascript">
(function () {
var gadget = AJS.Gadget({
baseUrl: "__ATLASSIAN_BASE_URL__",
useOauth: "/rest/gadget/1.0/currentUser",
config: {
descriptor: function(args) {
var gadget = this;
gadgets.window.setTitle("SQL Gadget Config");
var projectPicker = AJS.gadget.fields.projectPicker(gadget, "projectId", args.projectOptions);
return {
fields: [
projectPicker,
{
id: "configNumber-id",
userpref: "configNumber",
label: "Config number",
description: "",
type: "select",
selected: gadget.getPref("configNumber"),
options: [
{
label:"1",
value:"1"
},
{
label:"2",
value:"2"
},
{
label:"3",
value:"3"
}
]
},
AJS.gadget.fields.nowConfigured()
]
};
},
args: function()
{
return [
{
key: "projectOptions",
ajaxOptions: "/rest/gadget/1.0/filtersAndProjects?showFilters=false"
}
];
}()
},
view: {
/* HTML PART*/
onResizeAdjustHeight: true,
enableReload: true,
template: function (args)
{
var gadget = this;
var response = args.projects.value;
AJS.$.each(AJS.$.parseJSON(response), function(idx, obj) {
console.log(obj);
});
var myList=AJS.$.parseJSON(response);
var test="<body onLoad=buildHtmlTable()><table id=excelDataTable border=1> </table></body>";
document.getElementById("myDiv").innerHTML = test;
var columns = addAllColumnHeaders(myList);
for (var i = 0 ; i < myList.length ; i++) {
var row$ = AJS.$('<tr/>');
for (var colIndex = 0 ; colIndex < columns.length ; colIndex++) {
var cellValue = myList[i][columns[colIndex]];
if (cellValue == null) { cellValue = ""; }
row$.append(AJS.$('<td/>').html(cellValue));
}
AJS.$("#excelDataTable").append(row$);
}
function addAllColumnHeaders(myList)
{
var columnSet = [];
var headerTr$ = AJS.$('<tr/>');
for (var i = 0 ; i < myList.length ; i++) {
var rowHash = myList[i];
for (var key in rowHash) {
if (AJS.$.inArray(key, columnSet) == -1){
columnSet.push(key);
headerTr$.append(AJS.$('<th/>').html(key));
}
}
}
AJS.$("#excelDataTable").append(headerTr$);
return columnSet;
}
},
args: [
{
key: "projects",
ajaxOptions: function ()
{
var projectName;
var confOrder;
var projectField = document.getElementById("projectId");
var confNumbElement = document.getElementById("configNumber-id");
if(projectField != null){
projectName = projectField.options[projectField.selectedIndex].text;
console.log(projectName);
}
if(confNumbElement != null){
confOrder = confNumbElement.options[confNumbElement.selectedIndex].text;
console.log(confOrder);
this.configNumber = confOrder;
}
return {
url: "/rest/sqlrestsource/latest/execute",
data: {
projectId : gadgets.util.unescapeString(this.getPref("projectId")),
configNumber : gadgets.util.unescapeString(this.getPref("configNumber")),
}
};
}
}
]
}
});
})();
#requireResource(“com.atlassian.gadgets.publisher:ajsgadgets”)
#requireResource(“sqlGadget:Web资源”)
#requireResource(“com.atlassian.jira.gadgets:common”)
#requireResource(“com.atlassian.jira.gadgets:autocomplete”)
#includeResources()
(功能(){
var gadget=AJS.gadget({
baseUrl:“\uuuuAtlassian\uBase\uURL”,
UseAuth:“/rest/gadget/1.0/currentUser”,
配置:{
描述符:函数(args){
var gadget=this;
gadgets.window.setTitle(“SQLGadget配置”);
var projectPicker=AJS.gadget.fields.projectPicker(gadget,“projectId”,args.projectOptions);
返回{
字段:[
projectPicker,
{
id:“配置编号id”,
userpref:“配置编号”,
标签:“配置号”,
说明:“,
键入:“选择”,
选中:gadget.getPref(“configNumber”),
选项:[
{
标签:“1”,
值:“1”
},
{
标签:“2”,
值:“2”
},
{
标签:“3”,
值:“3”
}
]
},
gadget.fields.nowConfigured()
]
};
},
args:function()
{
返回[
{
键:“项目选项”,
ajaxOptions:“/rest/gadget/1.0/filtersAndProjects?showFilters=false”
}
];
}()
},
视图:{
/*HTML部分*/
onResizeAdjustHeight:真,
enableReload:true,
模板:函数(args)
{
var gadget=this;
var response=args.projects.value;
AJS.$.each(AJS.$.parseJSON(响应)、函数(idx、obj){
控制台日志(obj);
});
var myList=AJS.$.parseJSON(响应);
var检验=”;
document.getElementById(“myDiv”).innerHTML=test;
var columns=addAllColumnHeaders(myList);
对于(变量i=0;i