如何从Javascript / jQuery中为选择框添加onChange属性

时间:2012-09-19 14:27:15

标签: javascript jquery html javascript-events

我有选择框没有onChange属性。现在加载完整页后,根据一些条件我必须为javascript中的选择框添加'onChange'。我正在尝试使用以下代码。但它不起作用。

$("#depositForm").attr(("onChange", "selectedMainDepositType('this');" ));

它没有添加onChange事件。

<select id="depositForm_depositSubType" class="depositSubType" style="width:160px;" name="depositSubType"> 

必须更改为

<select id="depositForm_depositSubType"  onchange="selectedMainDepositType(this);"  class="depositSubType" style="width:160px;" name="depositSubType">

请建议如何添加onChange属性。

5 个答案:

答案 0 :(得分:16)

你试过......

$("#depositForm").on("change", function(event) { 
     selectedMainDepositType(this);
} );

jQuery .on()

答案 1 :(得分:6)

$("#depositForm").change(function(e){
    selectedMainDepositType($(this));
});

答案 2 :(得分:0)

 document.getElementById('depositForm').onchange = undefined;

 $("#depositForm").change(..);

试一试..我希望它适合你.. 原帖[{3}}

答案 3 :(得分:0)

对于寻找其他答案的人。 我使用这种方法是因为我必须首先搜索动态创建的选择列表。

var dropdown = document.getElementsByTagName("select");
for (i=0; i<dropdown.length; i++) {
    if (dropdown[i].title == "Component") {
        dropdown[i].onchange = changeApproverCC;
    }
}

答案 4 :(得分:0)

您可以尝试以下方法:

import sqlite3

with sqlite3.connect('accounts.db') as db:
    cursor = db.cursor()

cursor.execute('''
CREATE TABLE IF NOT EXISTS user(
userID INTEGER PRIMARY KEY,
username VARCHAR(20) NOT NULL,
firstname VARCHAR(20) NOT NULL,
lastname VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL);
''')

# section added to remove preexisting records
cursor.execute("DELETE FROM user")

cursor.execute('''
INSERT INTO user(username,firstname,lastname,password)
VALUES('test_User','Bob','Smith','MrBob')
''')
db.commit()

cursor.execute('SELECT * FROM user')
print(cursor.fetchall())

希望可以帮助您:)