내 질문 : Attribute.Add가 속성의 추가 서식을 변경하는 방법이 있습니까?Attribute.Add가 속성의 추가 형식을 변경하는 방법은 가능합니까?
div에 widget을로드하는 ASP.net 웹 사이트가 있는데, 내 코드 숨김으로 div에 데이터 옵션 속성을 추가하는 방법을 찾으려고합니다. 할당 할 값이 JSON 쌍이기 때문에 큰 따옴표 대신 데이터 옵션 값 주위에 작은 따옴표로 특성을 작성해야합니다.
내가처럼 보이도록 속성을 필요가있는 무엇 : 데이터 옵션 = '{ "post_message_origin": "https://www.mysite.com/MyWidget.aspx"}'는 Attribute.Add를 사용할 때처럼 보이는 무엇
("데이터 옵션") : 내 코드 :
string dataoptions = "{\"post_message_origin\":\""+ HttpContext.Current.Request.Url.AbsoluteUri + "\"}";
MYWIDGET.Attributes.Add("data-options", dataoptions);
속성 결과 : 데이터 옵션 = "{"post_message_origin ":"https://www.mysite.com/MyWidget.aspx "}"를 포괄 따옴표의
세트 data-options 값은 JSON 쌍이 올바르게 읽히지 못하게하므로 나의 질문입니다.
코드를 변경하지 않고 개발 서버에서 프로덕션 서버로 페이지를 쉽게로드 할 수 있도록 하드 코딩을 사용하지 않도록 최선을 다하고 있습니다. 따라서 HttpContext.Current.Request.Url.AbsoluteUri를 사용하고 있습니다. ASP에서 태그에 div에 직접 데이터 옵션 값을 쓰는 대신 코드 뒤에
사실을하지만, 그것은 단지 측면 단계입니다. 이 경우에만 작동합니다. OP가 데이터를 제어하고있는 것으로 보입니다. –
한번 시도해 보았습니다. 사용중인 서비스가 JSON 쌍을 큰 따옴표로 사용해야했습니다. 낄낄 거림에 대해서는 처음으로 엉망진창이 아닌지 확인하기 위해 다시 시도해 보았습니다. JSON 쌍을 작은 따옴표로 묶으면 내 위젯이로드되지 않습니다. 내 게시글에서 언급 했어야합니다. – David
@Christopher Stevenson, 나는 그 포스트를 검토했지만, 애트리뷰트를 추가 할 때 .net이 실제로 html에 속성을 추가하는 방식과 아포스트로피의 인코딩을 다룬다. 위젯에서 아포 스트로피 사용을 테스트했을 때 아포스트로피 인코딩에 문제가 없었습니다. 맞춤 인코더가 작동하지 않는다고 말할 수는 없으며 링크 된 게시물과 내 질문이 반복되는 것으로 생각하지 않습니다. – David