0

ここで何が問題なのか正確にはわかりませんが、電話番号、Webサイト、および電子メールをハイパーリンクにする必要があり、どこから始めればよいのかよくわかりません。

アンカータグを使用する前に何かを試しましたが、機能しませんでした。情報は私のSQLテーブルに保存されており、このスクリプトがデータを使用できるようにするPHPスクリプトによってアクセスされています。必要なリンクを作成するだけです。

function geo() {
    var id = $.QueryString("id"),
        id = (!id) ? "null" : id; // Passing the value null to string
    var loadUrl = 'http://localhost/test/detail.php';
    $.getJSON('http://localhost/test/detail.php?id=' + id, function (data) {
        $.each(data, function (key, val) {
            if (val.Image != "" && val.Image != null) {
                $('#placePic').attr('src', 'images/' + val.Image);
            } else {
                $('#placePic').attr('src', 'images/default_image2.jpg');
            }
            if (val.Name != "" && val.Name != null) {
                $('#placeName').text(val.Name);
            }
            $("#list_All").html("");
            if (val.PhoneNumber != "" && val.PhoneNumber != null) {
                $("#list_All").append("<li><h3>Phone Number :</h3>" + val.PhoneNumber + "</li>");
            } else {
                $("#list_All").append("<li><h3>Phone Number :</h3>No Data Found</li>");
            }
            if (val.Address != "" && val.Address != null) {
                $("#list_All").append("<li><h3>Address :</h3>" + val.Address + "</li>");
            } else {
                $("#list_All").append("<li><h3>Address :</h3>No Data Found</li>");
            }
            if (val.Email != "" && val.Email != null) {
                $("#list_All").append("<li><h3>Email ID :</h3>" + val.Email + "</li>");
            } else {
                $("#list_All").append("<li><h3>Email ID :</h3>No Data Found</li>");
            }
            if (val.Website != "" && val.Website != null) {
                $("#list_All").append("<li><h3>Website :</h3>" + val.Website + "</li>");
            } else {
                $("#list_All").append("<li><h3>Website :</h3>No Data Found</li>");
            }
            $("#pom_btn").attr("href", "http://localhost/test/on_map.html?id=" + val.userId + "&lat=" + val.Lat + "&lon=" + val.Lon);
        });
    });
}
window.onload = function () {
    geo();
}
4

3 に答える 3

1

これを試して:

function geo() {
    var id = $.QueryString("id"),
        id = (!id) ? "null" : id; // Passing the value null to string
    var loadUrl = 'http://localhost/test/detail.php';
    $.getJSON('http://localhost/test/detail.php?id=' + id, function (data) {
        $.each(data, function (key, val) {
            if (val.Image != "" && val.Image != null) {
                $('#placePic').attr('src', 'images/' + val.Image);
            } else {
                $('#placePic').attr('src', 'images/default_image2.jpg');
            }
            if (val.Name != "" && val.Name != null) {
                $('#placeName').text(val.Name);
            }
            $("#list_All").html("");
            if (val.PhoneNumber != "" && val.PhoneNumber != null) {
                $("#list_All").append("<li><h3>Phone Number :</h3>" + 
                    "<a href='tel:" + val.PhoneNumber + "'>" + val.PhoneNumber + "</a></li>");
            } else {
                $("#list_All").append("<li><h3>Phone Number :</h3>No Data Found</li>");
            }
            if (val.Address != "" && val.Address != null) {
                $("#list_All").append("<li><h3>Address :</h3>" + val.Address + "</li>");
            } else {
                $("#list_All").append("<li><h3>Address :</h3>No Data Found</li>");
            }
            if (val.Email != "" && val.Email != null) {
                $("#list_All").append("<li><h3>Email ID :</h3>" 
                    "<a href='mailto:" + val.Email + "'>" + val.Email + "</a></li>");
            } else {
                $("#list_All").append("<li><h3>Email ID :</h3>No Data Found</li>");
            }
            if (val.Website != "" && val.Website != null) {
                $("#list_All").append("<li><h3>Website :</h3>" + 
                    "<a href='" + ((val.Website.indexOf("http")!=0)?"http://":"") + val.Website +
                    "'>" + val.Website + "</a></li>");
            } else {
                $("#list_All").append("<li><h3>Website :</h3>No Data Found</li>");
            }
            $("#pom_btn").attr("href", "http://localhost/test/on_map.html?id=" + val.userId + "&lat=" + val.Lat + "&lon=" + val.Lon);
        });
    });
}
window.onload = function () {
    geo();
}

ウェブサイトへのリンクの場合、先頭に「http://」または「https://」が必要です。簡単なテストを行いましたが、ケースによってはより完全なテストが必要になる場合があります。

于 2012-05-30T19:33:54.087 に答える
1
 $("#list_All").append("<li><a href='" + val.Website + "'>Website</a></li>");
于 2012-05-30T19:34:13.337 に答える
1

アドレスを印刷するだけではハイパーリンクにはなりません。アンカー タグをラップする必要があります。

例えば:

$("#list_All").append("<li><h3>Website :</h3><a href='" + val.Website + "'>" + val.Website + "</a></li>");
于 2012-05-30T19:34:13.537 に答える