您好我想在我的网站上添加Google图书预览按钮。 它的代码类似于:
<script> GBS_setLanguage('en');</script>
<script>GBS_insertPreviewButtonPopup('ISBN:0596009208');</script>
现在问题是我从上一页获得了ISBN号。 所以我必须在页面上的C#代码中包含它。 那怎么做呢? 我尝试过这样做,但它只是不编译
答案 0 :(得分:0)
使用此代码执行我想要的操作...但它将脚本/谷歌预览按钮(在我的情况下)放置到页眉或页脚。但没有其他方法可以做到这一点。
HtmlGenericControl script1 = new HtmlGenericControl("script");
script1.Attributes.Add("type", "text/javascript");
script1.Attributes.Add("src", "http://books.google.com/books/previewlib.js");
this.Page.Header.Controls.Add(script1);
string GoogleScript = "";
string isbncode = "";
if (Page.Request.QueryString["isbn"] != null)
isbncode = Page.Request.QueryString["isbn"];
GoogleScript = "GBS_setLanguage('en'); GBS_insertPreviewButtonPopup('ISBN:";
isbncode = isbncode + "');";
HtmlGenericControl script3 = new HtmlGenericControl("script");
script3.Attributes.Add("type", "text/javascript");
script3.InnerHtml = GoogleScript + isbncode ;
this.Page.Controls.Add(script3);
答案 1 :(得分:0)
您可以轻松地将ISBN作为查询字符串参数包含在网址中,并将其拉入您的javascript代码,而无需服务器端包含。 As seen here:
function getQueryString() {
var result = {}, queryString = location.search.substring(1),
re = /([^&=]+)=([^&]*)/g, m;
while (m = re.exec(queryString)) {
result[decodeURIComponent(m[1])] = decodeURIComponent(m[2]);
}
return result;
}
//url: www.yourwebsite.com?isbn=123456789
var _ISBN = getQueryString()["isbn"];
GBS_setLanguage('en');
GBS_insertPreviewButtonPopup(_ISBN);