这是我要操作的元素:
private IEnumerator GetUserDataRequest(string PHPSESSID)
{
UnityWebRequest request = UnityWebRequest.Get(myUrl);
// This one gives me an InvalidOperationException
request.SetRequestHeader("Cookie", "PHPSESSID=" + PHPSESSID);
// And those gives me an 403 forbidden response from the server
//request.SetRequestHeader("PHPSESSID", PHPSESSID);
//request.SetRequestHeader("Set-Cookie", "PHPSESSID=" + PHPSESSID);
yield
return request.SendWebRequest();
if (request.isNetworkError)
{
Debug.LogWarning("Error while getting the user data.");
}
else
{
//...
}
}
这是jQuery代码,用于更改该元素的<a href="https://www.google.com" id='link_one'>This is Google!</a>
和href
属性:
text
以上jQuery代码仅更改了$('#link_one').attr({
href: 'https://stackoverflow.com',
text: 'This is StackOverflow!'
});
属性,而没有更改href
属性。但是,以下方法有效:
text
我尝试过的:
$('#link_one').text('This is StackOverflow!');
我什至尝试了上述方法,但没有将属性名称放在引号中。我应该将什么放入attr()参数中以达到所需状态?
答案 0 :(得分:2)
文本不是<a>
元素的属性。您必须使用jquery的.text
函数来分配文本。
$('#link_one').attr({
href: 'https://stackoverflow.com'
}).text('This is StackOverflow!');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a id="link_one" href="">Initial text</a>
答案 1 :(得分:1)
锚点没有属性文本。您尝试更改text / html not属性,以了解为什么它不起作用。尝试这种方式:
variable.hasOwnProperty('a')
$('#link_one').attr({
href: 'https://stackoverflow.com',
placeholder: 'This is StackOverflow!'
}).html('This is StackOverflow!');
答案 2 :(得分:1)
首先,标签内的文本(这是Google!)不是标签的属性。它只是标签的一个元素。这就是为什么您不能使用attr()方法更改该文本的原因。您必须使用text()或html()方法进行更改。但是您可以更改href,因为它是标签的属性
$('#link_one').attr({
href: 'https://stackoverflow.com'
}).text("That is stackoverflow");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="https://www.google.com" id='link_one'>This is Google!</a>
。