将第一个元素聚焦在新行上

时间:2016-11-01 13:00:42

标签: javascript jquery web html-table

当我向Html表添加一个新行时,我想要聚焦该行的第一个单元格。

我目前的代码是

$('table td').first().focus();         // focus on the first cell of the row

但这会选择整个表格的第一个单元格。获取添加行的第一个单元格需要什么?

2 个答案:

答案 0 :(得分:1)

如果在表的末尾添加此行,则需要在代码中将.first替换为.last。但最好的方法是在添加行时执行此操作。例如:

using namespace std;

void print(vector<string>str) {

    vector<string>::iterator it=str.begin();
     while (it!=str.end()) {
         cout<<*it<<endl;
         it=it+1;
    }
}

void collectWord(vector<string>&str,string line) {

    const char* delim=" ,.-";
    char* l =new char[line.length()+1];
    strcpy(l,line.c_str());
    char *pch;
    pch=strtok(l,delim);

    while (pch!=NULL) {

       // cout<<pch<<endl;
        str.push_back(pch);
        pch=strtok(NULL,delim);
    }

    delete[] l;

}

int main() {

    string line;
    vector<string>spam;

    ifstream spamfile("spam.txt");
    if (spamfile.is_open()) {
        while (getline(spamfile,line)) {
            collectWord(spam,line);
        }
        spamfile.close();
    }
    else{
        cout<<"Unable to open file"<<endl;
    }

    print(spam);

    return 0;

}

答案 1 :(得分:0)

他说,&#34;在td中找到第一个table。&#34;

您想要&#34;在td的{​​{1}}中找到第一个tr。&#34;

table

假设最后一个$('table tr').last().find('td').first().focus(); 是刚刚添加的行。