我有一个适用于连接数据库的IE的表单。这非常有效。但是,当我填写文本框时,数据不会传输到数据库。我检查了field.value,它总是等于我输入的内容。记录集指向右表,因为我在每次迭代时都检查了行的名称。但是,来自框的数据实际上从未实际更新过?
function parkRecordSet(){
var conn = accesDB()
var cmdDI = CreateCommand(conn, "tblPark");
var rsDI = CreateRecordSet(cmdDI);
inputData(rsDI)
UpdateData(conn, rsDI);
}
所以这部分效果很好。输入数据接收一个数组,该数组将作为recordData传递给下面的函数。我发出警报,看看我得到的值是否正确。
function AddNewDataToRecordSet(rs, recordData){
rs.AddNew();
var myFields = rs.Fields;
var myEnum = new Enumerator(myFields);
var indexRecordData = 0;
var fieldItem;
myEnum.moveFirst();
for ( ; !myEnum.atEnd(); myEnum.moveNext() ){
fieldItem = myEnum.item();
//alert( "Field Name is: " + fieldItem.Name + " Value is: [" + fieldItem.Value + "]" + "Attr=" + fieldItem.Attributes)
if (fieldItem.Attributes & adFldIsNullable) { //bit-wise test
fieldItem.Value = recordData[indexRecordData];
//alert(fieldItem.Value)
indexRecordData = indexRecordData + 1;
} //end of IF
rs.Fields("ParkName") = "In Process"
}
return;
}
function UpdateData(conn, rs) {
conn.BeginTrans();
rs.Update();
conn.CommitTrans();
// Performing the update
rs.Close();
return;
}