dropdownlist 的一个问题
我想实现的效果是,如图:点击添加,弹出一个新页面,新页面有(一个文本框,一个“添加“按钮),我想实现添加完新项后,能在dropdownlist控件中接着显示出此项。要如何实现 --------------------编程问答-------------------- 在新页面里实现把文本框的内容插入数据库,再重定向回旧页面。 --------------------编程问答-------------------- 需要把dropdownlist重新绑定一下就可以了 --------------------编程问答-------------------- 貌似不行…… --------------------编程问答-------------------- 点击添加,关闭新页面,刷新母页面,ddl重新绑定,然后就有了,不要跟我说你的ddl就没有绑定 --------------------编程问答-------------------- 使用Session把保存的ID值存起来 在父页重新绑定Dropdownlist 在设置dropdownlist.selectvalue=session[""] 就可以了 --------------------编程问答-------------------- 不过session容易丢失数据 如果要考虑这层因素就传参吧 --------------------编程问答-------------------- $("#DropDownList1").append('<option value="0" selected="selected">新增选项</option>'); --------------------编程问答-------------------- 首先:你在母页面放一个updatepanel,把你的ddl放在updatepanel里,再放进去一个按钮,该按钮是用来刷新页面的(就是重新绑定数据)
其次:你“弹出的新页面”关闭(数据已经提交了)的同时刷新母页面:
respons.write("<script lanuage='javascript'>"alert('保存成功!');parent.subfrm.document.getElementById('Refresh').click();parent.CloseDialog();</script>"); --------------------编程问答-------------------- 用一个页面就行了啊,搞个div就解决了 --------------------编程问答-------------------- 连重定向都不可以?无语 --------------------编程问答-------------------- 看你的弹出页面是什么
DIV 的话 直接在后台给dll.item.add();
如果是模态窗口用Jquery给下拉框加个
参考7楼 --------------------编程问答-------------------- 重新绑定应该可以了呀 --------------------编程问答--------------------
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestWebForm.aspx.cs" Inherits="lbx_web.TestWebForm" %>
<!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 src="js/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#divAdd").hide()
$("#ShowId").click(function () {
$("#divAdd").show();
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:DropDownList ID="ddlShow" runat="server">
</asp:DropDownList>
<a id="ShowId">添加</a>
<div id="divAdd" >
<asp:TextBox ID="txtDDLShow" runat="server"></asp:TextBox>
<asp:Button ID="btnOK" runat="server" Text="确定" onclick="btnOK_Click" />
</div>
</form>
</body>
</html>
--------------------编程问答--------------------
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.MobileControls;
using System.Collections;
namespace lbx_web
{
public partial class TestWebForm : System.Web.UI.Page
{
ArrayList list = new ArrayList();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bind();
}
}
private void Bind()
{
ddlShow.DataSource = list;
ddlShow.DataBind();
}
protected void btnOK_Click(object sender, EventArgs e)
{
string ddlShow = txtDDLShow.Text.Trim();
list.Add(ddlShow);
Bind();
}
}
} --------------------编程问答-------------------- 点击“添加”把原来的页面定向到添加页面。在添加页面操作完成后再重定向到原来的页面就可以啦。这个貌似不难吧。 或者如楼上各位所说 添加个div --------------------编程问答-------------------- 参考:
http://www.cnblogs.com/insus/archive/2011/11/08/2241255.html
--------------------编程问答-------------------- ddl.options.add(new Option('TXT_TEXT', 'TXT_TEXT')); --------------------编程问答-------------------- 是不是打开的是模态窗口,如果是的话,在页面中加一下<%@ OutputCache NoStore="true" Duration="1" VaryByParam="*" %>,不然的话即使有数据更新页面也不会更新的 --------------------编程问答-------------------- 1。可以用AJAX,实现前台的显示。
2。可以添加完后数据后,直接刷新这个页面。
补充:.NET技术 , ASP.NET