ですぐに消え、私はbutton
をクリックしたときに、単に私のaspx
ページにdiv
内に新しいinput field
を作成したいです。私は、既存のdiv
に新しい子要素(入力フィールド)を追加するjavascript関数の魔法使いを使用します。それはすべてのようになります。私はボタンをクリックしたときに私はHTMLのdiv要素を作成しますが、それはこれはイライラさせられるASP.NET
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="Pages_test" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
function clone() {
var html = document.createElement("input");
html.setAttribute("id", 1);
html.setAttribute("name", "dejan");
html.setAttribute("value", "some text");
html.setAttribute("type", "text");
document.getElementById("panj").appendChild(html);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="panj">
Djubrov
</div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="clone()" />
</form>
</body>
</html>
おかしい事は、第二のために、設定されたテキスト値が点滅しているテキスト要素であるが、それはあとがきに消えます。何か不足していますか?
なぜポストバック後にクライアント側で作成された要素が残っていると思いますか?サーバーはそれらが存在することを知らず、それらを再作成しません。 –
ユーザーが負傷したイベントが発生したときに新しい要素を作成し、同じページに表示させるにはどうすればよいですか? –