そのため、C# を使用して jQuery を動的に生成し、それを Web ページに送信しています。 問題は、ファイルと Js Fiddle に従って正しい jQuery を生成しているように見えますが、実際にはページで機能しません。
jsFiddle はこちらhttp://jsfiddle.net/ER2hE/
ここで、javacript を Web サイトに送信する方法を調べました。このように動作するはずです。 http://msdn.microsoft.com/en-us/library/bb359558.aspx
それを行う私のコードはこのメソッドです
private void sendScript(string script)
{
const string someScript = "alertMe";
//send the built script to the website.
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), someScript, script, true);
}
これは非常に単純で、他のコード呼び出しでも機能しました。しかし、この例ではそうではありません。
それを呼び出すコードは、私のC#ではこれです
private void populateGroups()
{
//this generates correct javascript according to the file and JS fiddle but unfortunately doees not work.
string splitme = "USE ACES SELECT GroupName, GroupID FROM PrimaryGroup ORDER BY GroupName";
DataTable dt = fillDataTable(splitme);
string script = "";
foreach (DataRow dr in dt.Rows)
{
//add the locations to the <select> box
script += " $('#groupList').append('<option value=\" " + dr.ItemArray[1].ToString() + " \"> " + dr.ItemArray[0].ToString() + " </option>'); ";
}
sendScript(script);
JSErrorLog(script, "GROUPS");
}
すべてが起動時に呼び出されています
protected void Page_Load(object sender, EventArgs e)
{
if (this.IsPostBack == false)
{
populateMakes();
populateLocation();
populateGroups();
}
}
その生成するjQueryはJSFiddleでも機能します。ここで呼び出しているメソッドで生成するjavascriptを記述するメソッドからこれを引き出しています。これはフィドルJSErrorLogです。
ああ、私のaspxファイルのhtmlは次のようになります
<div class="row2">
<span>Group</span>
<select id="groupList" multiple="multiple" onclick="setGroups()" class="normalsize">
</select>
</div>
それがすべてだと思います。自分のものが機能するようにしたいだけです。追加のコードがあれば喜んで投稿します。お尋ねください。なぜ機能しないのかについての考えがあれば、私に知らせてください。