我正在创建一个房地产应用程序,我对如何显示购买和租赁网址感到困惑。
我有一个带有2个单选按钮的页面供买和租。
当用户点击搜索按钮时,我想根据单选按钮选择在我的控制器上调用不同的操作并导航到该URL。
例如,如果用户点击“购买”单选按钮并单击搜索,则操作将为“购买”,并且网址将为/ buy / properties
如果用户点击租借单选按钮并点击搜索,则该行动将被租用,而网址将为/ rent / properties
我只想要一个名为search的提交按钮,它根据单选按钮选择调用不同的动作。
我不确定如何执行此任务?
答案 0 :(得分:0)
假设您的按钮我是html:
<input type="button" id="btnSubmit" value="Search" />
单选按钮就像:
<input type="radio" name="trade" value="Buy">Buy</input>
<input type="radio" name="trade" value="Rent">Rent</input>
在Jquery U中将写作
$("#btnSubmit").click(function(){
var checkedValue=$('input:radio[name=trade]:checked').val();
var URL = //Based on the checkedValue, you can hit the desired URL string here.
$.get(URL, function(data) {
});
}
});
答案 1 :(得分:0)
如果您想发布可以使用此表单的表单。
Html代码:
<form action="" method="post" id="MyForm">
<label>
<input type="radio" name="StateType" value="Buy" />
Buy
</label>
<label>
<input type="radio" name="StateType" value="Rent" />
Rent
</label>
<input type="button" value="Submit" onclick="redirect()" />
</form>
JQuery代码:
<script src="~/Scripts/jquery.validate.min.js"></script>
<script>
function redirect() {
if ($("#MyForm").valid()) {
// if form isValid
var url = "";
var urlBuy = "@Url.Action("Buy","Home")";
var urlRent = "@Url.Action("Rent","Home")";
var selectedRadio = $("input[name='StateType']:checked").val();
if (selectedRadio == "Buy") {
url = urlBuy;
} else {
url = urlRent;
}
var frm = $(event.target).closest("form");
frm.attr("action", url);
frm.submit();
}
}
</script>
祝你好运
答案 2 :(得分:0)
作为Javascript的替代方案,您只需将表单发布到控制器操作并从那里重定向即可。
public ActionResult ActionName(PurchaseType purchaseType)
{
if (purchaseType == PurchaseType.Rent)
return RedirectToAction("Rent", "Index");
else
return RedirectToAction("Buy", "Index");
}