Excel ファイルを読み取って、速度計に出力を表示する必要があります。入力を取得しました。これが私の HTML とスクリプト コードです。Excel ファイルには名前と値が含まれています。
<input type="text" id="txtSpeed" name="txtSpeed" value="20" maxlength="2" />
<input type="button" value="Draw" onclick="drawWithInputValue();">
<input type="file" id="file" onchange="checkfile(this);" />
<input type="button" id="btnSubmit" onclick="readdata(1, 2)" value="Submit" />
function checkfile(sender) {
var validExts = new Array(".xlsx", ".xls", ".csv");
var fileExt = sender.value;
fileExt = fileExt.substring(fileExt.lastIndexOf('.'));
if (validExts.indexOf(fileExt) < 0) {
alert("Invalid file selected, valid files are of " +
validExts.toString() + " types.");
return false;
}
else return true;
}
function readdata(x,y) {
try {
var excel = new ActiveXObject("Excel.Application");
excel.Visible = false;
var excel_file = excel.Workbooks.Open("D:\\Test.xls");
\\ alert(excel_file.worksheets.count);
var excel_sheet = excel_file.Worksheets("Sheet1");
var data = excel_sheet.Cells(x, y).Value;
//alert(data);
drawWithexcelValue(data);
}
catch (ex) {
alert(ex);
}
// return data;
}
スピードメーターのコードは次のとおりです
function drawWithInputValue() {
var txtSpeed = document.getElementById('txtSpeed');
alert(txtSpeed.value);
if (txtSpeed !== null) {
iTargetSpeed = txtSpeed.value;
// Sanity checks
if (isNaN(iTargetSpeed)) {
iTargetSpeed = 0;
} else if (iTargetSpeed < 0) {
iTargetSpeed = 0;
} else if (iTargetSpeed > 80) {
iTargetSpeed = 80;
}
job = setTimeout("draw()", 5);
}
}
function drawWithexcelValue(val) {
var txtSpeed = val;
if (txtSpeed !== null) {
iTargetSpeed = txtSpeed.value;
// Sanity checks
if (isNaN(iTargetSpeed)) {
iTargetSpeed = 0;
} else if (iTargetSpeed < 0) {
iTargetSpeed = 0;
} else if (iTargetSpeed > 80) {
iTargetSpeed = 80;
}
job = setTimeout("draw()", 5);
}
}
だから私はファイルのExcelファイルを取得しています.このExcelファイルを介して値がスピードメーターに表示されます.しかし、送信ボタンをクリックすると、スピードメーターのニドルが0になります..スピードメーターにExcelファイルの値が表示されません. .
関数 checkfile(sender) は検証用です 関数 readdata(x,y) は Excel ファイルの読み取り用 関数 drawWithInputValue() は手動での出力用です.. 同様に、テキスト名「txtspeed」に 40 の値を入力したとします。 Drawボタンをクリックすると、ハンドルを回転させることで速度計に値が表示されます
関数 drawWithexcelValue(val) は、Excel ファイルを読み取り、その値を出力に表示するためのものです。
ここに問題があります.. Excel ファイルに名前と値があるとします。名前の値はインド 35 中国 46 米国 73 です。送信ボタンをクリックすると、最初に 35 が表示され、46 と 73 が表示されます。名前..しかし、私のコードによれば、送信ボタンをクリックすると、Excelファイルの値が表示されず、ゼロが表示されるだけです... HELP !!!!!!