use std::io;
use std::result;
use failure::{Backtrace, Fail};
/// This is a new error type manged by Oxide library.
/// The custom derive for Fail derives an impl of both Fail and Display.
#[derive(Debug, Fail)]
pub enum OxideError {
#[fail(display = "{}", message)]
GeneralError { message: String },
#[fail(display = "{}", message)]
IoError {
message: String,
backtrace: Backtrace,
#[cause]
cause: io::Error,
},
}
/// Create general error
pub fn general(fault: &str) -> OxideError {
OxideError::GeneralError {
message: String::from(fault),
}
}
/// Create I/O error with cause and backtrace
pub fn io(fault: &str, error: io::Error) -> OxideError {
OxideError::IoError {
message: String::from(fault),
backtrace: Backtrace::new(),
cause: error,
}
}
答案 0 :(得分:1)
任何DOM元素都不能有多个id
。如果您给它一个以上,则后续的将被忽略。 id
必须是唯一的,并且两个DOM元素不能具有相同的id
。否则,document.getElementById
将返回找到的id
的第一个元素。
如果您要设置样式或选择动态创建的所有input
元素,请考虑为其提供一个类,以便您可以使用查询选择器来获取所有元素。
document.querySelector('input.myClass');
答案 1 :(得分:0)
您可以从以下位置反转字符串定界符:
"<input id ='vegetable'"+i+" type=number"
收件人:
'<input id ="vegetable'+i+'" type=number'
在第一种情况下,呈现的ID将类似于:
答案 2 :(得分:0)
将此行 html +="<td>"+"<input id ='vegetable'"+i+" type=number min=0 max=10 value=0>"+"</td>";
更改为 html += "<td>"+"<input id ='vegetable"+i+"' type='number' min='0' max='10' value='0'>"+"</td>";
这只是标记的位置。我认为会很好。
选中JSFiddle