PDA

View Full Version : اشكال در selector



peymannaji
شنبه 25 اردیبهشت 1389, 11:25 صبح
با سلام

مشكلي كه با اون برخورد كردم اين هست كه چگونه ميتونم به تگ Body و در نهايت كلمه تست دست پيدا كنم .




<td id="EditorCenter" class="reContentCell" style="height: 100%;" valign="top">
<label for="EditorContentHiddenTextarea" style="display: none;">RadEditor hidden textarea</label>
<textarea id="EditorContentHiddenTextarea" name="Editor" rows="4" cols="20" style="display: none;"></textarea>

<iframe id="Editor_contentIframe" frameborder="0">

<html>
<head>
<style></style>

<link href="/EditorContentAreaStyles.css" type="text/css" id="RADEDITORSTYLESHEET0" rel="stylesheet">
<link href="Styles/styles.css" type="text/css" id="RADEDITORSTYLESHEET2" rel="stylesheet">
</head>


<body><br _moz_editor_bogus_node="TRUE" _moz_dirty="">Test</body>

</html>

</iframe>

</td>


با تشكر

امیـرحسین
شنبه 25 اردیبهشت 1389, 12:33 عصر
فکر کنم این مشکلی نداشته باشه:
$('#Editor_contentIframe body').text();

peymannaji
شنبه 25 اردیبهشت 1389, 13:08 عصر
اين رو امتحان كرده بودم قبلا . جواب نداد .

pashaie
شنبه 25 اردیبهشت 1389, 22:43 عصر
این رو امتحان کن




var frame = $("#Editor_contentIframe")[0].contentDocument;
var text = $("body", frame).text();


اگه نشد این پلاگین JQuery رو هم یه تست بزن
http://ideamill.synaptrixgroup.com/?p=6

راستی، مگه خود ویرایشگر تلریک متدودی، پروپرتی چیزی واسه خودن محتوای ادیتور نداده؟ هلپشو یه نیگا بنداز.
(داری از ادیتور تلریک یا همون RadControls استفاده می کنی دیگه)

واسه ASP.Net MVC کومپونتاشو نداری؟

peymannaji
سه شنبه 28 اردیبهشت 1389, 12:46 عصر
دوست عزيز اون سلكتور هم جواب نداد . از پلاگين هم نميخوام استفاده كنم .

خود تلريك يك كدي در اين مورد قرار داده اما جالبه كه كار نميكنه ! و حداقل فوكس بروي كانتنت نيست بلكه بروي كل اديتور هست .

pashaie
سه شنبه 28 اردیبهشت 1389, 13:07 عصر
دوست عزيز اون سلكتور هم جواب نداد .

عجیبه!
آقا یه کاری کن، تو IE یا FF که سایتت رو باز می کنی، View Source رو بزن، سوس رو سیو کن و اینجا آپ کن تا یه نیگا بهش بندازم

peymannaji
سه شنبه 28 اردیبهشت 1389, 13:57 عصر
همون چيزي كه گذاشتم حاصل نمايش فاير باگ هست !

mehdi.mousavi
چهارشنبه 29 اردیبهشت 1389, 10:50 صبح
سلام.
کد شما در اصل همچین چیزی هستش:

<body>
<td id="EditorCenter" class="reContentCell" style="height: 100%;" valign="top">
<label for="EditorContentHiddenTextarea" style="display: none;">
RadEditor hidden textarea</label>
<textarea id="EditorContentHiddenTextarea" name="Editor" rows="4" cols="20" style="display: none;"></textarea>
<iframe id="Editor_contentIframe" frameborder="0" src="test.htm"></iframe>
</td>
</body>


و در اینجا test.htm در واقع محتویات iframe شماست که همچین چیزیه:

<head>
<style></style>
<link href="/EditorContentAreaStyles.css" type="text/css" id="RADEDITORSTYLESHEET0"
rel="stylesheet">
<link href="Styles/styles.css" type="text/css" id="RADEDITORSTYLESHEET2" rel="stylesheet">
</head>
<body>
<br _moz_editor_bogus_node="TRUE" _moz_dirty="">
Test</body>

حالا اینو باید در نظر بگیرید که وقتی صفحه Parent اتون Load میشه، لزوما IFRAME های اون Load نشدن! در نتیجه، شما باید حواستون به Load شدن IFRAME مورد نظر باشه، هر وقت Load شد، میتونید به محتویاتش دسترسی پیدا کنید. به بیان دیگه:

$(function () {
$('#Editor_contentIframe').load(function () {
var v = $(this.contentDocument).find('body').html();
alert(v);
});
});


اینجا من منتظر Load صفحه اصلی هستم، هر وقت Load شد، میگم منتظر Load شدن Iframe باشه. هر وقت Iframe من Load شد، اونوقت با contentDocument و دستور find به body یا هر Element دیگه ای که مد نظرم هست میرسم.

موفق باشید.