我有select元素,并且我正在调用函数onclick
,它工作正常,但是我想在元素加载时调用此函数,但是由于可以动态创建select元素,因此我想调用函数getPrice应该在元素出现时每秒使用this.value作为参数或每秒调用一次,该怎么办?
<select class="form-control item" name="items[]" onclick="get_price(this.value)">
// Options
</select>
function get_price(item)
{
$.ajax({
type: "POST",
url: "getData.php",
data: {item: item},
success: function(data) {
// do stuff
},
});
}
答案 0 :(得分:2)
因为选择元素可以动态创建
您可以通过JS代码附加事件:
private KeysetHandle getOrGenerateNewKeysetHandle() throws IOException, GeneralSecurityException {
AndroidKeysetManager.Builder keysetManagerBuilder = new AndroidKeysetManager.Builder()
.withSharedPref(getApplicationContext(), TINK_KEYSET_NAME, TINK_PREF_FILE_NAME)
.withKeyTemplate(AeadKeyTemplates.AES256_GCM);
if (Build.VERSION.SDK_INT >= 23) {
keysetManagerBuilder.withMasterKeyUri(ANDROID_KEYSTORE_TINK_MASTER_KEY_URI);
} else {
keysetManagerBuilder.doNotUseKeystore();
}
return keysetManagerBuilder.build().getKeysetHandle();
}
//JSUT FOR DEMO START
setTimeout(function() {
$('.item').append('<option>Dynamic option</option>');
}, 500);
//JSUT FOR DEMO END
function get_price() {
console.log('Perform ajax request with item : ' + $(this).val());
}
$('.item').change(get_price);