我在使用jquery将值设置为调用函数的元素时遇到问题。这是代码
元素:
each outlet in FBoutlets
br
label(for='FBoutlet') Facebook: #{outlet.FBoutlets.name}
input(type='checkbox', value='', onchange="streamFB(" + outlet.FBoutlets.FBpageId + "," + JSON.stringify(outlet.FBoutlets.FBaccessToken) + ")", name='FBoutletCredentials', id='FBoutlet')
功能:
script.
window.fbAsyncInit = function() {
FB.init({
appId : '20212222222',
autoLogAppEvents : true,
xfbml : true,
version : 'v2.12'
});
};
function streamFB(pageId, accessToken){
FB.api(
'/' + pageId + '/live_videos',
'POST',
{access_token: accessToken},
function(response) {
let rtmp = response.stream_url
console.log(rtmp)
console.log(response)
$(this).val() = rtmp;
}
);
}
$(this).val()返回undefined,我需要使用这个因为元素id动态生成
答案 0 :(得分:7)
你应该改变它
$(this).val() = rtmp;
到
$(this).val(rtmp);
答案 1 :(得分:1)
jquery val函数将参数值作为赋值
val()方法返回或设置所选的value属性 元件。
此方法返回FIRST匹配元素的value属性的值。
此方法设置所有匹配元素的value属性的值。
注意:val()方法主要用于HTML表单元素。
返回value属性:
$(selector).val()
设置值属性:
$(selector).val(value)
使用函数设置value属性:
$(selector).val(function(index,currentvalue));
值必需。指定value属性的值 function(index,currentvalue)可选。指定一个函数 返回要设置的值。 index - 返回的索引位置 set currentvalue中的元素 - 返回当前值属性 所选元素
源:https://www.w3schools.com/jquery/html_val.asphttps://www.w3schools.com/jquery/html_val.asp
答案 2 :(得分:0)
替代解决方案,
$(this)[0].value = rtmp;
或
this.value = rtmp;
答案 3 :(得分:0)
我认为您必须将 $(this).val()= rtmp; 更新为 -
$(this).val(rtmp);
或者,
this.value = rtmp;
答案 4 :(得分:0)
更改$(this).val() = rtmp;
到$(this).val(rtmp);