PDA

View Full Version : عدم شناسایی جاوا اسکریپت توسط ویژوال استادیو



mkmostafa
سه شنبه 10 خرداد 1401, 11:15 صبح
سلام
وقت همگی بخیر
من میخوام جاوا اسکریپت رو هم یاد بگیرم با ویژوال استادیو 2019 (سی شارپ بلدم و میخوام فراند اند رو هم با همین ویژوال بنویسم)
دستورات alert رو برام اجرا میکنه ولی دستور زیر رو خطا میده و اجرا نمی کنه؟؟؟؟؟
از لحاظ دستوری درست نوشتم (چون دقیقا مثال استاد درس بود)
ولی مرورگر کروم(اخرین ورژن هست)خطا میده
دستور سی شارپ :
<%@ Page Language="C#‎‎‎" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>java script</title>
<script src="JavaScript.js"></script>
</head>
<body>
<form id="form1" runat="server">
<div id="main">
<h1 id="title" class="titr2">salam javascript</h1>

<ul>
<li class="itemli">item1</li>
<li class="itemli">item2</li>
<li class="itemli">item3</li>
<li class="itemli">item4</li>
<li class="itemli">item5</li>
</ul>
</div>
</form>
</body>
</html>





دستور جاوا اسکریپت
[JAVA]

console.log(document.querySelector('.itemli').inne rHTML)

خطا :
153805

ممنون میشم راهنمایی بفرمایید

mazoolagh
چهارشنبه 11 خرداد 1401, 11:23 صبح
سلام و روز خوش
کدی که گذاشتین هیچ مشکلی نداره :
console.log(document.querySelector('.itemli').inne rHTML);

ولی اون پیغام خطا نشون میده که کلاس itemli رو پیدا نکرده در نتیجه حاصل querySelector برابر null میشه و بالطبع innerHTML خطا میده.
با دقت چک کنین که اسم ها دقیقا درست باشه.

Tekyegah
پنج شنبه 12 خرداد 1401, 20:13 عصر
سلام

<script src="JavaScript.js"></script>

این رو بذار بعد از تگ بسته شدن Body یعنی اینجا :
</body>

ASHKANLAEI
جمعه 13 خرداد 1401, 12:37 عصر
سلام
خودتون رو جای مرورگر بذارید:

فایل html شما رو باز می‌کنه
میرسه به تگ script و فایل javascript رو اجرا می‌کنه
تگ با کلاس itemli پیدا نمی‌کنه چون هنوز به قسمتی از html نرسیده که اون تگ ساخته می‌شه
ارور میده ولی پردازش html رو ادامه میده
تگ‌ها رو می‌سازه و شما صفحه رو می‌بینید

برای این که مشکل حل بشه دوتا راه ساده دارین:

تگ script رو آخر صفحه بذارین (اما داخل body باشه یعنی قبل از نوشتن </body>)
توی فایل js اون خط از کدتون رو داخل document.onload بذارین که بعد از بارگذاری کامل صفحه، اجرا بشه

document.onload = function() {console.log(document.querySelector('.itemli').inn erHTML)}